C++静态不会链接

标签 c++ static linkage

你能帮忙吗? 以下代码:

class MT
{
public:
    static int ms_number;

};

int MT::ms_number;

产量:

Error   8   error LNK2005: "public: static int MT::ms_number" 
      (?ms_number@MT@@2HA) already defined in ProjName.obj

为什么?

最佳答案

你需要移动这条线:

int MT::ms_number;

从您的 .h 文件中提取到单个 .cpp 文件中。

关于C++静态不会链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3079836/

相关文章:

C++ 警告 : anonymous type with no linkage used to declare variable

c++ - 概念返回类型要求语法二对一模板参数

java - 从类数组调用方法会给出 NullPointerException

c++ - 初始化私有(private)静态变量

c# - 分配给基类的静态只读字段

c - KPIT GCC 将文本字符串分配给特定的链接器部分

c++ - C++中extern "C"有什么作用?

c++ - 无法加载 dll libglorycolx2010.dll。应用程序启动失败,因为它的并行配置不正确。结果 : 0x800736B1

c++ - UE4 C++ 将字符串转换为 double

c++ - 使用QT进程使用命令行从笔记本电脑获取传感器信息