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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • android 关于提高第三方app的service优先级

    android 关于提高第三方app的service优先级

    2022年2月4日
    49
  • 用matlab绘制三维图_家系图绘制的基本规则

    用matlab绘制三维图_家系图绘制的基本规则情形一:函数有显式表达式z=f(x,y)z=f(x,y)z=f(x,y)例1:圆锥面:z=x2+y2z=\sqrt{x^2+y^2}z=x2+y2​clc,clear,closeallx=-5:0.1:5;[X,Y]=meshgrid(x);Z=sqrt(X.^2+Y.^2);mesh(X,Y,Z)例2:旋转抛物面z=2−x2−y2z=2-x^2-y^2z=2−x2−y2clc,clear,closeallx=-5:0.1:5;[X,Y]=meshgrid(x);Z=2-X

    2022年10月11日
    0
  • mysql fsync_mysql fsync

    mysql fsync_mysql fsync标签:1介绍数据库系统从诞生那天开始,就面对一个很棘手的问题,fsync的性能问题。组提交(groupcommit)就是为了解决fsync的问题。最近,遇到一个业务反映MySQL创建分区表很慢,仔细分析了一下,发现InnoDB在创建表的时候有很多fsync——每个文件会有4个fsync的调用。当然,并不每个fsync的开销都很大。这里引出几个问题:(1)问题1:为什么fsync开销相对都比较大…

    2022年5月6日
    48
  • wangEditor的使用

    wangEditor的使用wangEditor的使用第一步,将其下载,并引入项目中。第二步,引入js第三步,初始化对象第四步,添加一些配置配置菜单配置图片上传第五步,设置内容第六步,获取内容很好,很方便!

    2022年8月2日
    3
  • java 日志查看_Java日志

    日志对于一个系统来说非常重要,查找异常信息、分析系统运行情况等都需要用到日志。所以无论是JDK还是第三方都提供了关于日志的相关工具,本文分别介绍以下几种工具,以及各种工具间的整合、原理。JDK的java.util.logging包第三方日志工具(commons-logging/slf4j,log4j/logback)JDK的java.util.logging包JDK1.4引入了java.util….

    2022年4月6日
    80
  • 带你深入理解什么叫js闭包

    带你深入理解什么叫js闭包闭包用一句话总结:闭包就是作用域的延伸解释:函数内部的作用域属于局部作用域,导致只有函数内部才可以访问声明的变量。而闭包可以将局部作用域延伸,使其在函数外部也可以访问内部声明的变量等。关于变量的作用域js变量的作用域无非就两种局部变量和全局变量JavaScript在函数内部可以访问全局变量varn=0;//全局变量functionf1(){console.log(n)//0}f1();而在函数内部声明的局部变量,外部无法直接访问functionf1(

    2022年6月18日
    38

发表回复

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

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