__declspec(selectany) 的作用是什么

  在MFC,ATL的源代码中充斥着__declspec(selectany)   的声明。selectany可以让我们在.h文件中初始化一个全局变量而不是只能放在.cpp中。比如有一个类,其中有一个静态变量,那么我们可以在.h 中通过类似"   __declspec(selectany)   type   class::variable   =   value;   "这样的代码来初始化这个全局变量。既是该.h被多次include,链接器也会为我们剔除多重定义的错误。这个有什么好处呢,我觉得对于 teamplate的编程会有很多便利。

posted on 2009-02-21 13:48  cutepig  阅读(4471)  评论(0编辑  收藏  举报

导航