0

我在将文件链接在一起时遇到了一些麻烦。我正在使用一些课程:

文件 Ah 中 A 类的标头

class A
{
public:
    B someVariable;    //there is class B used!!
    int number;
};

文件 Bh 中 B 类的标头

class B
{
public:
    void someMethod();  
};

B的实施

B::someMethod()
{
    cout << "Value is:" << globalInstanceOfA.number << "\n";
}

然后在另一个文件中我需要声明一个全局变量 globalInstanceOfA,我将在整个程序中使用它......

但我无法解决在哪里放置 include、extern 等。我试过这样的事情:

#include "A.h"
#include "B.h"

extern A globalInstanceOfA;

有人能帮我吗?

4

1 回答 1

1

线

extern A globalInstanceOfA;

进入你必须包含的头文件才能使用变量globalInstanceOfA;这提供了全局变量的声明

线

A globalInstanceOfA;

进入您的任何 cpp 文件以提供全局变量的定义。程序中的所有 cpp 文件中必须有一个定义。

于 2012-11-25T13:19:30.320 回答