当我这样做:(
less /usr/include/stdio.h这只是一个C库 - 与C++无关)
我看了__THROW很多函数声明.此外,一些函数上面的评论说'这个函数是一个可能的取消点,因此没有标记__THROW'这是什么?
throw 用于异常处理...但据我所知,C不提供任何支持.
请解释.
如果我定义一个没有实际主体的函数宏,它是否像编译器的空字符串(即它在编译时不生成任何额外的指令)?
例:
#define SomeMacro(a)
SomeMacro("hello"); // This line doesn't add any instructions, does it?
Run Code Online (Sandbox Code Playgroud) 如何在C++中实现no-op宏?
#include <iostream>
#ifdef NOOP
#define conditional_noop(x) what goes here?
#else
#define conditional_noop(x) std::cout << (x)
#endif
int main() {
conditional_noop(123);
}
Run Code Online (Sandbox Code Playgroud)
我希望在定义NOOP时不执行任何操作,并且在未定义NOOP时打印"123".
我来了accros这行代码:
#define CPARSER_FLAGS_DEBUG (1 << 0)
Run Code Online (Sandbox Code Playgroud)
它有什么作用?它与以下相同:
#define CPARSER_FLAGS_DEBUG (1)
Run Code Online (Sandbox Code Playgroud)
对?