跨代码文件可访问的变量

时间:2015-03-19 08:58:32

标签: c++ static linker

好的,我在创建所有代码文件中具有相同值的变量时遇到了一些问题。基本上,我需要能够创建变量,更改它的值,并在另一个代码文件中检查它的新值。我几乎肯定static关键字会解决这个问题,但在测试我的代码之前,我只是想要一些确认(我的代码不是在我拥有的机器上运行,我和#39; d必须联系某人测试商品。)

2 个答案:

答案 0 :(得分:3)

您还可以使用旧的extern关键字。

e.g。 file.cpp:

int myvar;

要使用myvar的每个文件:

extern int myvar;

外部变量信息也可以在头文件中提供,以避免多变量定义。

当然你也可以创建静态字段。 somefile.h:

#ifndef _SOMEFILE_H
#define _SOMEFILE_H

class myclass{
public:
    static int mystaticfield;
};

#endif

somefile.cpp:

int myclass::mystaticfield;

要使用mystaticfield的每个文件:

#include "somefile.h"

// ...

myclass::mystaticfield = 9; //usage

答案 1 :(得分:0)

这正是extern可以使用的地方。

请在此处找到详细信息:http://en.wikipedia.org/wiki/External_variable