4

这里有一个相关的未回答问题:
c++ - Variables auto-initialized to 0 in unnamed namespace? - 堆栈溢出

当我在 CI 中有一个全局函数指针时,可以将其声明为静态并将其初始化为 NULL 并且仅可用于我的文件。在 C++ 中,我将很多东西切换到匿名命名空间,但我很好奇它们是否持有同样的保证。如果我在匿名命名空间中有一个函数指针,它会被初始化为 null 吗?

谢谢

4

1 回答 1

10

程序启动时,所有具有静态存储持续时间的变量都初始化为零。这些包括在命名空间范围内声明的所有变量(在全局命名空间或任何其他命名空间中,包括未命名的命名空间)。

于 2012-09-26T20:19:49.593 回答