VS2015无法解析外部符号

VS2015无法解析外部符号在使用VS编辑C++时,遇到了无法解析外部符号的错误严重性代码说明项目文件行错误LNK2019无法解析的外部符号"public:__thiscallEmployee::Employee(void)"(??0Employee@@QAE@XZ),该符号在函数"public:__thiscallmanager::manager(int,classstd::bas…

大家好,又见面了,我是你们的朋友全栈君。

在使用VS编辑C++时,遇到了无法解析外部符号的错误

 

严重性 代码 说明 项目 文件 行
错误 LNK2019 无法解析的外部符号 “public: __thiscall Employee::Employee(void)” (??0Employee@@QAE@XZ),该符号在函数 “public: __thiscall manager::manager(int,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)” (??0manager@@QAE@HV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) 中被引用 Process_four F:\C++\Process_four\Process_four\Process_four.obj 1

 

严重性 代码 说明 项目 文件 行
错误 LNK2019 无法解析的外部符号 “public: __thiscall Employee::~Employee(void)” (??1Employee@@QAE@XZ),该符号在函数 __unwindfunclet$??0manager@@QAE@HV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z$1 中被引用 Process_four F:\C++\Process_four\Process_four\Process_four.obj 1

网上找了下解决方法,收藏一个http://blog.csdn.net/enotswn/article/details/5934938

后来发现是虚函数写的有问题

错版:

class Employee
{
protected:
	int No;
	string name;
	float salary;
	static int totalNo;     // 自动计算员工编号
public:
	Employee()
	{
		++Employee::totalNo;
	}//自动计算员工编号,姓名从键盘输入,工资初值为0
	~Employee()
	{
		--Employee::totalNo;
	}
	virtual void pay();        //计算月薪
	virtual void display();      //显示人员信息
};	int No;
	string name;
	float salary;
	static int totalNo;     // 自动计算员工编号
public:
	Employee()
	{
		++Employee::totalNo;
	}//自动计算员工编号,姓名从键盘输入,工资初值为0
	~Employee()
	{
		--Employee::totalNo;
	}
	virtual void pay();        //计算月薪
	virtual void display();      //显示人员信息
};

正确:

 

 

class Employee
{
protected:
	int No;
	string name;
	float salary;
	static int totalNo;     // 自动计算员工编号
public:
	Employee()
	{
		++Employee::totalNo;
	}//自动计算员工编号,姓名从键盘输入,工资初值为0
	~Employee()
	{
		--Employee::totalNo;
	}
	virtual void pay() = 0;        //计算月薪
	virtual void display() = 0;      //显示人员信息
};
class Employee
{
protected:
	int No;
	string name;
	float salary;
	static int totalNo;     // 自动计算员工编号
public:
	Employee()
	{
		++Employee::totalNo;
	}//自动计算员工编号,姓名从键盘输入,工资初值为0
	~Employee()
	{
		--Employee::totalNo;
	}
	virtual void pay(){}//计算月薪
	virtual void display(){}//显示人员信息
};

问题在于自己没有分清虚函数和纯虚函数的使用方法。

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153465.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Win32 API 访问路由的加密网页

    Win32 API 访问路由的加密网页

    2021年8月6日
    64
  • 业界流行的图形数据库(Graph Database)理解(一)

    业界流行的图形数据库(Graph Database)理解(一)关于图形数据库的见解最近在网上阅读了相关图形数据库的知识 深有体会 此外本人想把所理解的知识分享给大家 有错误点请指出 共同进步 图形数据库 Graghdatabas 起源于欧拉的七桥问题 基于图论所设计的 属于 NoSQL 类型的一种 想必都知道 NoSQL 有哪几种吧 键值 Key value 文档 Document 列存储 Column Family 图 Gragh 图形数据库的数据模型主要是以节点 Nodes 和边 Edges 来体现 对于复杂的数据都能快速解决 简单地举个例子

    2025年7月29日
    3
  • MBUS协议_sbus协议

    MBUS协议_sbus协议在前面关于MBus协议的描述中,个人觉得在描述TSS721部分存在不容易理解的地方,总觉得还可以说的更清楚点,在实际使用中我又发现TSS721的一款替代芯片,在这里作个详细的说明,可以加深对MBus协议实现的理解和TSS721部分的理解。2013年9月10日–推动高能效创新的安森美半导体(ONSemiconductor,美国纳斯达克上市代号:ONNN)推出一款新的集成…

    2022年10月15日
    3
  • JVM类加载过程

    1.JVM类加载过程1.概述从类的生命周期而言,一个类包括如下阶段:加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的,类的加载过程必须按照这种顺序进行,而解析阶段则不一定,它在某些情况下可能在初始化阶段后在开始,因为java支持运行时绑定。2.类加载时机加载(loading)阶段,java虚拟机规范中没有…

    2022年4月4日
    57
  • 10、TestNG 的 FixTrue用法一

    10、TestNG 的 FixTrue用法一

    2022年4月2日
    92
  • C语言数组作为函数参数「建议收藏」

    C语言数组作为函数参数「建议收藏」一:数组元素作为函数的实参数组元素就是变量,与普通变量没有区别,将数组元素传送给形参,实现单向的值传递。#include&lt;stdio.h&gt;floatmax(floatx,floaty){ if(x&gt;y) returnx; else returny;}intmain(){ inta[6]={3,2,1,4,9,0}; intm…

    2022年7月11日
    17

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号