C++中的链接错误

1.有可能是类的函数实现的时候错误。

如:应该为MVT_PAR1* GpsTcpCallback::GetMUT_PAR1(unsigned char* data,int i),

却写成了MVT_PAR1* GetMUT_PAR1(unsigned char* data,int i)

错误提示:error LNK2001: unresolved external symbol public: struct MVT_PAR1 * __thiscall GpsTcpCallback::GetMUT_PAR1(unsigned char *,int)" (?GetMUT_PAR1@GpsTcpCallback@@QAEPAUMVT_PAR1@@PAEH@Z)

2.类中静态变量未初始化或初始化错误。(类中静态变量初始化方法:静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域操作符来指出静态成员所属的类.但如果静态成员是整型或是枚举型const,则可以在类声明中初始化!!!)

如:

头文件:class person

{

public:

person();

~person();

int Getheight();

int Getweight();

int height;

static int weight;

};

实现文件:#include "a.h"

int person::weight = 0;//静态成员初始化格式

person::person()

{

height = 100;

weight = 100;

}

错误提示:error LNK2001: unresolved external symbol "public: static int person::weight" (?weight@person@@2HA)

转载自:http://blog.csdn.net/liuyizhe567/article/details/6369206

ps:另外的就是Linker里没有添加 lib

原文地址:https://www.cnblogs.com/jeekun/p/3199436.html