c++ 全局对象
Posted
技术标签:
【中文标题】c++ 全局对象【英文标题】:c++ global object 【发布时间】:2011-02-07 04:12:31 【问题描述】:我想在 cpp 程序中创建一个全局对象,我该怎么做? 这是正确的吗? 在“global_obj.h”中
#include "class.h"
Class obj;
在“main.cpp”中
extern Class obj;
【问题讨论】:
你的一个答案是绝对正确的。extern
声明属于头文件。非extern
定义恰好属于一个.cpp
文件。
【参考方案1】:
我们在一个头文件中将我们的全局变量声明为extern
,在您的例子中是:global_obj.h,而在源文件中实际的全局变量是:global_obj.cpp。在单独的源文件中,我们#include "global_obj.h"
可以访问它们。
应该是这样的:
global_obj.cpp
Class obj;
global_obj.h
extern Class obj;
main.cpp
#include "global_obj.h"
【讨论】:
以上是关于c++ 全局对象的主要内容,如果未能解决你的问题,请参考以下文章