C/C++ 宏技巧】的更多相关文章

什么是VBA?它有什么作用? A.实现Excel中没有实现的功能. B.提高运行速度. C.编写自定义函数. D.实现自动化功能. E.通过插入窗体做小型管理软件. VBA在哪里存放的?怎么运行? A.模块中 在Excel 2010中若没有“开发工具”项,通过“文件”——“选项”——“自定义功能区”——选中“开发工具”——“确定”(图1). (注:为了提高word2010中插入的图片的质量,“文件”——“选项”——“高级”——选中“不压缩文件图像质量”——“确定”.)…
特殊符号#.## (1)# When you put a # before an argument in a preprocessor  macro, the preprocessor turns that argument into a character array.  在一个宏中的参数前面使用一个#,预处理器会把这个参数转换为一个字符数组 简化理解:#是“字符串化”的意思,出现在宏定义中的#是把跟在后面的参数转换成一个字符串 #define ERROR_LOG(module) fprint…
前言 本文介绍下X宏的使用 首先简单介绍下宏的几种用法 #define STRCAT(X,Y) X##Y #define _STR(X) #@X #define STR(X) #X #define Log(...) {printf(__VA_ARGS__);} /* * x##y 拼接xy * #@x 单引号包裹'x' * #x 字符串化,双引号包裹"x" * __VA_ARGS__会扩展参数... */ ANSI C标准中有几个标准预定义宏(也是常用的): LINE:在源代码中插入当…
1. C 也可以模板化 #define DEFINE_ARRAY_TYPE(array_type_, element_type_) \ static inline int array_type_ ## _init(struct array_type_ *array) { \ return lwan_array_init((struct lwan_array *)array); \ }// 实现了根据不同 array_type_ 来生成不同的函数名,是不是很吊炸天,中间的 ## 用来连接前后的两个…
MXNet--DMLC-Core代码解读与宏 dmlc-core是Distributed (Deep) Machine Learning Community的一个基础模块,这个模块用被应用到了mxnet中.dmlc-core在其中用了比软多的宏技巧,代码写得很简洁,值得大家学习.这博客中讲解了其中的宏和mxnet中是怎么向dmlc-core中注册函数和初始化参数的. 宏(Macros)的一般用法与特殊用法 C/C++中的宏是编译的预处理,主要用要文本替换.文本替换就有很多功能,比如用来控制编译的…
最近一段时间 c++ 社区里最火热的话题莫过于 cppcon2015 了, isocpp 上一堆相关的新闻,其中有一个页面罗列了该会议的全部主题, 匆匆一瞥几乎眼花缭乱,为期一个星期的会议竟有上百个演讲,无论是数量还是内容所覆盖的范围,比之去年都更加丰富,作为一个野生的 c++ 的爱好者,我表示这样的盛会是不容错过的,多么希望能有机会前往现场感受一番,门票倒不是太贵,可惜远隔重洋,只能洒泪遥望.现在 cppcon 已过去一个多星期了,演讲的视频和材料还没全部公开,isocpp 上说要一个月的时间…
常用快捷键 技巧 0.0 删除文件中的当前行: Home + Shife-End + Delete 技巧 1.1 避免意外复制一个空白行 工具->选项->文本编辑器->所有语言->常规: 没有选定内容时对空行应用剪切或复制命令 技巧 1.2 通过剪贴板来循环粘贴不同内容 Ctrl-Shift-V: 可以在过去剪切或复制到剪贴板上的20条内容间进行循环粘贴 技巧 1.3 使用 Ctrl+Enter 组合键在上方插入一行, Ctrl+Shift+Enter 组合键在下方插入一行 技巧…
RTTI 是“Runtime Type Information”的缩写,意思是:运行时类型信息.它提供了运行时确定对象类型的方法.本文将简略介绍 RTTI 的一些背景知识.描述 RTTI 的概念,并通过具体例子和代码介绍什么时候使用以及如何使用 RTTI:本文还将详细描述两个重要的 RTTI 运算符的使用方法,它们是 typeid 和 dynamic_cast. 其实,RTTI 在C++中并不是什么新的东西,它早在十多年以前就已经出现了.但是大多数开发人员,包括许多高层次的C++程序员对它并不怎…
C++11标准发布已有一段时间了, 维基百科上有对C++11新标准的变化和C++11新特性介绍的文章. 我是一名C++程序员,非常想了解一下C++11. 英文版的维基百科看起来非常费劲,而中文版维基百科不是知道是台湾还是香港人翻译的然后由工具转换成简体中文的,有些术语和语言习惯和大陆程序不一样! 我决定结合这两个版本按照我自己的习惯把这篇文章整理到我的博客中.分享给关注我和关注C++11的朋友们. 当然了, 本人水平有限,英语水平也很一般,就把这个过程当做学习C++11的过程吧.文章中肯定会有很…
解析gtest框架运行机制   1.前言 Google test是一款开源的白盒单元测试框架,据说目前在Google内部已在几千个项目中应用了基于该框架的白盒测试. 最近的工作是在搞一个基于gtest框架搭建的自动化白盒测试项目,该项目上线也有一段时间了,目前来说效果还是挺不错的. 侯捷先生在<STL源码剖析>中说过一句话:”会用STL,是一种档次.对STL原理有所了解,又是一个档次.追踪过STL源码又是一个档次.第三种档次的人用起STL来,虎虎生风之势绝非第一档次的人能够望其项背.“ 我认为…