一个好用的宏

简介: #ifndef todo# define __STR2__(x) #x# define __STR1__(x) __STR2__(x)# define __LOC__ __FILE__ "("__STR1__(__LINE__)") : Warnin...

#ifndef todo
# define __STR2__(x) #x
# define __STR1__(x) __STR2__(x)
# define __LOC__ __FILE__ "("__STR1__(__LINE__)") : Warning Msg: "
# define __LOC2__ __FILE__ "("__STR1__(__LINE__)") : <TODO> "
# define todo(str) message (__LOC2__ str)
#endif
#endif

然后,在需要的地方写上 #pragma todo("...") 即可

这样在编译的时候就会出现todo 的警告,防止代码漏写

相关文章
|
7月前
|
编译器 C语言
C语言宏定义(#define定义常量​、#define定义宏​、 带有副作用的宏参数、 宏替换的规则、 宏函数的对比)
C语言宏定义(#define定义常量​、#define定义宏​、 带有副作用的宏参数、 宏替换的规则、 宏函数的对比)
|
7月前
|
存储 C++
c/c++宏定义(函数)
c/c++宏定义(函数)
宏定义和带参数的宏
宏定义和带参数的宏
67 0
|
C++
C++宏 #与##的区别
C++宏 #与##的区别
57 0
|
存储 安全 编译器
【为什么】C++中的宏
【为什么】C++中的宏
138 0
|
算法 C++
你是真的“C”——宏与函数的英雄本色
一、何为宏? 在进行宏和函数的对比时,我们先了解一下什么是宏。 #define 定义宏 #define 机制包括了一个规定,允许把参数替换到文本中,这种实现通常称为宏(macro)或定义宏(define macro)。 下面是宏的申明方式: #define name( parament-list ) stuff 其中的 parament-list 是一个由逗号隔开的符号表,它们可能出现在stuff中
122 0
C++编译提示宏重定义了,怎么办?
C++编译提示宏重定义了,怎么办?
957 0