您的位置:首页 > 编程语言 > C语言/C++

C++ LNK 2001 LNK 2019 LNK 2028 LNK 2029链接错误

2016-03-03 23:26 351 查看
C++并不是一个实现整体结构比较优良的语言。在写代码的过程中,很多的精力并不是在程序的结构和算法上,而是面对各种奇葩的错误问题。

多文件的C++代码经常容易造成链接错误,折腾几个晚上,将常见的原因总结如下:

1.未按顺序引用文件

2.未引入编译所需的连接库即lib文件

3.未使用#pragma once造成文件被多次编译

4.工程内函数或变量不存在

    1,只声明没定义。

    2,声明和定义的函数参数列表不一致。

    3,函数或变量拼写错误。

5.函数或变量所在的文件没有被正确编译

    1,所在的文件没有被添加到工程中。

    2,函数或变量的定义放在头文件,但是该头文件并没有被任何一个cpp文件引用,注意:这种情况只会出现入口函数的链接错误。

    4,预处理宏或条件编译导致函数或变量没有被正确编译。

    5,如果是内联(inline)函数,必须在需要用它的每个编译单位里定义,因此定义只能放在头文件中,不可以放在CPP文件中。

6.模板类的定义和实现需都放在头文件中

若以上仍没有解决问题,可以参考msdn官方文档
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: