我在编译/链接一组类时遇到了一些麻烦,其中一些类处理一个公共的全局变量。
基本上,我在 A 类中声明并定义了一个外部变量 foo,并在 B 类和 C 类中访问/更新它。
相关代码如下所示:
啊
extern string foo; // declare it <=== compiler error "storage class specified for foo"
B.cpp
include A.h
string foo; // define it
main () {
...
foo = "abc";
}
C.cpp
include A.h
cout << foo; // print it
我当前的错误是“为 foo 指定的存储类”。但是,我想知道这是否是正确的方法。我应该使用静态变量吗?任何帮助都非常感谢,因为我已经为此至少工作了一个小时。