C++静态错误:LNK1169 找到一个或多个多重定义的符号
我们都知道声明一个静态变量,同时一定要在类外对其进行赋初值,如果你没有赋初值,那么会导致错误,这是其一;
其二,一般我们在类中使用静态,而类的书写格式是一个.h文件对应一个.cpp实现文件。如果你的赋初值声明写在了.h文件中,那么就会报这个错误。改正方法就是把声明移到.cpp文件中,问题得以解决(反正我的是这个原因)
//class_A.h
class class_A
{
public:
class_A();
~class_A();
static m;
};
//class_A.cpp
#include "class_A.h"
int class_A::m=0;
class_A::class_A(){}
class_A::~class_A(){}
Higher you climb, more view you will see.
posted on 2019-11-20 09:43 Nancy_Fighting 阅读(603) 评论(0) 编辑 收藏 举报