开发者社区> hopegrace> 正文

7、ctemplate高级【转自1】

简介: 1、ctemplate高级【转自1】     Modifier(修改器),普通变量的类型(html,js或者其他),会进行校验和编码处理,比如html类型会将&转换成&。类型有html,pre,url query,javascript,css和json。
+关注继续查看

1、ctemplate高级【转自1

    Modifier(修改器),普通变量的类型(htmljs或者其他),会进行校验和编码处理,比如html类型会将&转换成&。类型有htmlpreurl queryjavascriptcssjson。如果觉得在模板变量中定义这些麻烦,可以在加载模板是使用google::Template::GetTemplateWithAutoEscaping()方法,使用自动替换模式,指定是Htmljs还是css。你可以编写你自己的modifier,来处理一些特殊的需求。

    Strip(清除器),模板中有一些空行和空白字符,在加载时,可以指定参数,是否需要清除。如google::STRIP_BLANK_LINESgoogle::STRIP_WHITESPACE

    ExpandEmitter,在ctemplate中有这个接口,这个接口是在展开模板时,输出数据用的,默认实现了std::string版本的StringEmitter,这种方式是处理完毕后,才能发送到客户端,std::string性能并不高。如果你要一个高效率的Web服务器,则可以用流式的模式。比如自己实现ExpandEmitter接口,实现数据流式发送到客户浏览器。

    字典copy,如果两个字典很类似,可以copy一个字典,然后修改,调用dict->MakeCopy()

参考

1http://hi.baidu.com/duanmuchun/blog/item/eab82273b1a8861b8701b0bd.html

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
有哪些好用到爆的软件呢?且看本文分析
全文搜索,可以针对当前页面或整本书籍搜索内容 链接预览,无需跳转即可预览链接内容 内置翻译,可以直接在书籍中翻译,无需多个应用跳转
48 0
关于个人全栈项目【臻美IT】博客类出现的问题以及解决方法
每做一个项目,要记得写下心得哦,别偷懒啊! 先上网址: www.maomin.club/
54 0
搭建自己的技术博客系列(三)让你的博客拥有评论功能!
给大家介绍一个博客评论神器,Valine。 本来hexo博客用的是gitment,我也非常喜欢,看着逼格就超高呀。无奈我用着bug略多,而且毕竟有github账户的小伙伴似乎并不多。于是我就忍痛准备换评论系统。
811 0
闫永慧的技术博客今天开启!
技术博客今天开启! Hello World
817 0
我的2017,阅读本文大约需要一整年
时光荏苒,恍惚间 2018 开始已经 3 天了,我知道这两天一定又是开始了一堆年终总结,当然我也不是跟风,只是去年立下的 Flag,从 2017 年开始,必须要做个年终总结。
1084 0
关于CSDN, cnblog, iteye和51cto四个博客网站的比较与分析
http://blog.csdn.net/pkucl1/article/details/6629819 CSDN: http://blog.csdn.net/ cnblog: http://www.cnblogs.com/ iteye: http://www.iteye.com/blogs/ 51cto: http://blog.51cto.com/   1. 基本功能 博客(又名网络日志),顾名思义,最早的基本功能就是支持用户在网站上写日志,并进行修改、删除、分类管理,以及对他人博客的阅读和评论等。
1577 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载