编译时出现这个 error C2512: 'Graduate' : no appropriate default constructor available 怎么解决!
作者&投稿:长沙晴 (若有异议请与网页底部的电邮联系)
错误提示说得很清楚了,没有合适的构造函数 你的Graduate类的构造函数是 Graduate(string n,string s,int a,string t,float sc,float w):Person(n,s,a),Teacher(n,s,a,t),Student(n,s,a,sc),wages(w){} 而你生成对象时 Graduate g; 参数表为空, 所以你得按构造函数的参数表,传入参数 比如 Graduate g("依","贰",三,"四",吧.9,9.0); 反正一定要传入与构造函数声明的一样的参数
首先,Chess game调用的构造函数是 game(){},而你在代码中并没有定义对应的构造函数,所以会出现上述的错误。修改方法如下,就是调用你已经申明的构造函数。
void main(){int map[2][2];int *p=NULL; Chess game(map, p);game.mapstart(game);}其次,你对mapstart只用申明,并没有实现,因此要想正确的编译通过,需要将
void mapstart(Chess&);修改为void mapstart(Chess&){}
你的Graduate类的构造函数是
Graduate(string n,string s,int a,string t,float sc,float w):Person(n,s,a), Teacher(n,s,a,t),Student(n,s,a,sc),wages(w){}
而你生成对象时
Graduate g;
参数表为空,
所以你得按构造函数的参数表,传入参数
比如
Graduate g("1","2",3,"4",8.9,9.0);
反正一定要传入与构造函数声明的一样的参数
慎鬼萘普: 在VS2010下进行VC++调试时,出现这样一种错误:error C2065:未声明的标识符,当时感觉十分怪异,为什么说怪异呢?因为如果在.cpp中未引入相关.h文件出现这样的错误很正常,但是现在是已经引入了相关的头文件,却还是出现了诸如error C2065、error C2087、error C2133...的错误.
清丰县15726032933: VC++编译软件代码出几个错误error C2065,fatal error C1083,C2143恳求帮助,谢谢! - ?
慎鬼萘普: 第一个是语法错误(syntax error),第二个是c++语言中的错误,也可以说是语法错误,即没有在没有声明的情况下使用了某一标识符(IXMLDOMDocument),第三个是编译程序时出错,C++程序中有2中文件,一种是头文件,一种是源文件,头文件都要用#include 预处理命令包含到某个源文件或者另一个头文件中,这里的错误是预处理器无法找到需要包含的头文件'dshow.h',我猜想可能是你没有将头文件包含在项目里面
清丰县15726032933: C语言中 编译时出现这个错误 怎么回事啊 - ?
慎鬼萘普: 根据这些信息,只知道变量b周围的栈出了问题.建议用单步调试(vc6.0环境下按F10),跟踪一下几个变量,看看内存的情况,一点点定位问题.
清丰县15726032933: 为什么VC++会出现error LNK2005,怎么解决!! - ?
慎鬼萘普: 程序的编译是以工程为单位的,而不是一个文件,而工程又是包涵在工作空间里的,所以解决方法有以下几点:1)新建一个文件后在“文件视图”里把第一个文件,也就是不需要编译的文件删除.2)在“文件视图”里的工作空间上右击->添加一个新的工程,然后在新的工程里新建第二个文件.
清丰县15726032933: 为什么我的c++一编译就出现这个、、、、如何解决啊... - ?
慎鬼萘普: 复制来的. 当VC++出现Compiling... Error spawning cl.exe 错误的解决办法有如下几种,请楼主尝试:方法1: 启动VC时不要用图形界面,通过在命令提示符下输入:Msdev /useenv运行(注意啦/前面有个空格).它会强制使系统环境变量全高...
清丰县15726032933: C语言编程时不能编译,总显示一个错误,亟待解决!!! - ?
慎鬼萘普: 大多数情况下都是vc安装的问题 试试下面的方法吧: Compiling... Error spawning cl.exe 可能很多人在安装VC 6.0后有过点击“Compile”或者“Build”后被出现的...
清丰县15726032933: 求编程高手解答,VC编译时出现 致命错误 RC1015 - ?
慎鬼萘普: 打开Visual C++6.0 ,从Tools->Option->Directories的Show directories for:选择框中选择“Include files”,添加刚才搜到的文件目录,“确定”即可.
清丰县15726032933: 啊,编译的时候出现如下错误,请问是什么原因 - ?
慎鬼萘普: C语言编译时有如下错误,怎么回事?extern int M=0; extern int N=0; extern int data[LENGTHINI]; extern int flag[LENGTHINI]; 这几句有问题,你把extern去掉.你没定义这几组数据,仅仅是声明了.连接是就会找不到定义处,所以回出现Linker Error.用extern声明变量时,extern有两中用法:1.声明的变量在本文件中后面将有定义.1.声明的变量在其他文件中定义(但编译时两文件要在一起编译).
清丰县15726032933: 编程时显示编译器错误 - ?
慎鬼萘普: 估计是你用C方式编译了这段C++代码.将扩展名改为cpp试试.
清丰县15726032933: 为什么我每次编译C语言时,都会发生这样的错误? - ?
慎鬼萘普: 这个可能是你编程用的软件没有装好,一般是路径安装问题.你用的是不是vc++6.0?是的话,下面有些解决方法你可以试试.关于vc++6.0软件编程时出现“Error spawning cl.exe”“ cannot open file "Debug/sad.exe"(其中sad是文件名)”...