我正在查看一些代码示例。在 .h 文件中,有这样的声明:
extern int NODATA;
它在许多其他文件中用于没有逻辑值的变量。
是否有必要在其他地方定义它,还是可以不定义它?
最佳答案
如何使用?如果按值使用,则必须定义
某处,它将采用它在
initializer——默认为 0。(当然,它应该是
const.) 如果它只被地址使用(即&NODATA
),那么它
仍然需要在某处定义。但在那种情况下,
惯用的约定是使用空指针:NULL
(或0
,
或者如果你有 C++11,nullptr
),没有理由这样做
否则,您也不必定义任何其他内容。
关于c++ - 为 future 的 'unset' 变量定义一个外部变量是一种好习惯吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16422241/