LNK2019 无法解析的外部符号
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LNK2019 无法解析的外部符号相关的知识,希望对你有一定的参考价值。
接口文件名:cth.h
#pragma once
class vr
public:
virtual void display() = 0;
;
继承:cha.h
#pragma once
#include "cth.h"
#include <iostream>
using namespace std;
class vr2 :public vr
public:
void display();
;
函数体:cha.cpp
#include "cha.h"
void display()
cout << "abc" << endl;
入口:main.cpp
#include "cha.h"
#include <iostream>
int main()
vr2 ab;
ab.display();
getchar();
都在同一个文件夹下
LNK2019 无法解析的外部符号 "public: virtual void __thiscall vr2::display(void)" (?display@vr2@@UAEXXZ),该符号在函数 _main 中被引用
C++
用的是VS2015
cout << "abc" << endl;
按照原来的 display被定义成全局函数,而不是类成员函数。追问
问的就是用类成员函数
不过我自己已经其他地方找答案了,还是要谢谢你回答我的问题
就是你定义错了 还说答非所问。 真是呵呵了。
error LNK2019: 无法解析的外部符号
error LNK2019: 无法解析的外部符号 _UKGetRemovalLetter@4,该符号在函数 "protected: virtual int __thiscall CPassZoneDemoDlg::OnInitDialog(void)" (?OnInitDialog@CPassZoneDemoDlg@@MAEHXZ) 中被引用 C:\Users\Administrator\Desktop\Elite EL Drive(1)\Samples\PassZoneDemo\PassZoneDemoDlg.obj PassZoneDemo
参考技术A 遇到这种问题一般都是由于缺少相应的库文件右击项目,选择“属性”--“链接器”--“输入”--“附加依赖项”
根据错误中的提示在下图右边的红色框内添加相应的lib文件
再次编译运行即可避免此类错误产生
这是我们常见的错误,我们要学会解决
只有在不断地探索解决的时候才会有收获
这样对程序员才是一种欣喜,一种进步追问
库文件我添加上之后没有什么效果
以上是关于LNK2019 无法解析的外部符号的主要内容,如果未能解决你的问题,请参考以下文章