explicit V8_INLINE Local(T* that) : val_(that) {}
class Number { public: int value; Number(int num) { value = num; } } //隐式转换 Number num=1; //相当于如下↓ Number num(1);
## define V8_INLINE inline __attribute__((always_inline))
编译相关,不影响代码逻辑,将函数强制内联
reinterpret_cast
#define NODE_MODULE_CONTEXT_AWARE_X(modname, regfunc, priv, flags) \ extern "C" { \ static node::node_module _module = \ { \ NODE_MODULE_VERSION, \ flags, \ NULL, \ __FILE__, \ NULL, \ (node::addon_context_register_func) (regfunc), \ NODE_STRINGIFY(modname), \ priv, \ NULL \ }; \ NODE_C_CTOR(_register_ ## modname) { \ node_module_register(&_module); \ } \ }
//headr.h extern int x;
如果没有extern,header.h又被多处引用,那么就会产生重复定义错误。
声明可以多次,定义只能一次