c++ 类中不能存在c语言同名函数的两个成员函数,是对还是错的

问2个C++的选择题拜托各位了 3Q在关于多继承二义性的描述中,( )是错误的。 (A)一个派生类的两个基类中都有某个同名成员,在派生类中对这个成员的访问可能出现二义性 (B)解决二义性的最常用的方法是对成员名的限定法 (C)基类和派生类中同时出现的同名函数,也存在二义性问题 (D)一个派生类是从两个基类派生来的,而这两个基类又有一个共同的基类,对该基类成员进行访问时,也可能出现二义性 在关于纯虚函数和抽象类的描述中,( )是错误的。 (A)纯虚函数是一种特殊的虚函数,它没有具体的实现 (B)抽象类是指具有纯虚函数的类 (C)一个基类中说明有纯虚函数,该基类的派生类一定不再是抽象类 (D)抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出
C C 标准答案! 满意请采纳
为您推荐:
扫描下载二维码C++ 类的成员函数调用同个类里的成员函数,编译出错_百度知道13:50 提问
将类中的成员函数写出来后,报错:本地函数非法
class Student{
string name[10];//姓名
//出生年月
double cpro,english,math,sport,java,allscore,//课程
Student();
char choose();
void input();
void add();
void change();
void delete1();
void findname();
void findnumber();
void output();
void order();
void save();
char choose()
system("cls");
cout&&"**************欢迎使用学生管理系统**************"&
void main()
char choose=v.choose();
while(choose=v.choose())
Student s[50];//指针对象,最多存50个学生数据
ofstream *file[50];
//负责对文件插入操作
//int flag=0;//flag判断输入是否有效
//if((p&='0'&&p&='9'))
// cout&&"
指令错误!请重新输入:"&&
//}while(flag==0);
switch(choose)
//接收功能选项
v.input();
v.change();
v.delete1();
v.findname();
v.findnumber();
v.output();
v.order();
default:cout&&"错误"&&
Student::input()
char xingbie[8];// 性别
char banji[4];//班级
//出生年月
double cpro,english,math,sport,java,allscore,//课程
cout&&endl&&"
cout&&endl&&"
cout&&endl&&"
cout&&endl&&"
cout&&endl&&"
cout&&endl&&"出生年月:";
cout&&endl&&"地址:";
cout&&endl&&"电话:";
cout&&endl&&"E-mail:";
cout&&endl&&"
C++成绩:";
cout&&endl&&"
英语成绩:";
cout&&endl&&"
高数成绩:";
cout&&endl&&"
体育成绩:";
cout&&endl&&"
JAVA成绩:";
allscore=cpro+english+math+sport+
总成绩:"&&allscore&&
average=(cpro+english+math+sport+java)/5;
平均成绩:"&&average&&
file[j]=new ofstream("D:\Student.txt",ios::ate);
*file[j]&&"姓名"&&name&&"学号"&&number&&"年龄"&&age&&"性别"&&xingbie&&"班级"&&banji&&"出生年月"&&birthday
&&"地址"&&dizhi&&"电话"&&phone&&"E-mail"&&mail&&" C++成绩 "&&cpro&&" 英语成绩 "&&english&&" 高数成绩 "
&&math&&" 体育成绩 "&&sport&&" JAVA成绩"&&java&&"总成绩"&&allscore&&"平均成绩"&&average&&
s[i]= Student(name, number,age,xingbie,banji,birthday,dizhi,phone,mail,cpro,english,math,sport,java,allscore,average);
数据输入成功,想继续输入吗(y/n):";
if(c!='y'&&c!='n')
指令错误!请重新输入!"&
}while(c=='y');
void Student::add(){
double cpro,english,math,sport,
请输入您要增加的学生的姓名:";
cout&&endl&&"请输入您要增加的学生的学号:";
cout&&endl&&"请输入您要增加的学生的年龄:";
cout&&endl&&"请输入您要增加的学生的性别 :";
cout&&endl&&"请输入您要增加的学生的班级:";
cout&&endl&&"请输入您要增加的学生的出生年月:";
cout&&endl&&"请输入您要增加的学生的地址:";
cout&&endl&&"请输入您要增加的学生的电话:";
cout&&endl&&"请输入您要增加的学生的E-mail:";
cout&&endl&&"请输入您要增加的学生的 C++成绩:";
cout&&endl&&" 请输入您要增加的学生的英语成绩:";
cout&&endl&&" 请输入您要增加的学生的高数成绩:";
cout&&endl&&" 请输入您要增加的学生的体育成绩:";
cout&&endl&&" 请输入您要增加的学生的JAVA成绩:";
{allscore=cpro+english+math+sport+}
总成绩:"&&allscore&&
{average=(cpro+english+math+sport+java)/5;}
平均成绩:"&&average&&
file[j]=new ofstream("d:\student.dat",ios::ate);
*file[j]&&"
姓名 "&&name&&" 学号
&& " C++成绩 "&&cpro&&" 英语成绩 "&&english&&" 高数成绩 "
&&math&&" 体育成绩 "&&sport&&" JAVA成绩 "&&java
&&" 总成绩 "&&allscore&&" 平均成绩 "&&average&&
s[i]= student(name, number,cpro,english,math,sport,java,allscore,average);
数据输入成功,想继续数入吗(y/n):";
if(c!='y'&&c!='n')
指令错误!请重新输入!"&&endl&&"
}while(c=='y');
void Student::change(){
double cc,eng,ma,sp,jav,as,flag=0;
cout&&"系统中找不到这个学生";
请输入您要修改的学生的姓名:";
for(int h=0;h
if(strcmp(name,s[h].name)==0)
{as=cc+eng+ma+sp+}
cout&&endl&&"
总成绩:"&&
{av=as/5;}
cout&&endl&&"
平均成绩:"&&
s[h].cpro=
s[h].english=
s[h].math=
s[h].sport=
s[h].number=
数据修改成功!"&&
if(flag==0)
您要修改的学生本来就不存在!请检查重新输入!"&
if(c!='y'&&c!='n')
}while(c=='y');
void Student::delete1(){
cout&&" 请输入你要删除的姓名 :";
char m[20];
for(int a=0;a&i;a++)
if(strcmp(s[a].name,m)==0)
for(w;w&i;w++)
s[w]=s[w+1];
删除成功!"&&
void Student::findname(){
char n[20];int j=0;
管理系统中没有输入数据!"&
int flag=0;
for(int j=0;j
if(strcmp(n,(s[j]).name)==0)
if(flag==0)
if(c!='y'&&c!='n')
while(c=='y');
void Student::findnumber(){
int n,j=0;
管理系统中没有输入数据!"&&
int flag=0;
请输入你要查询的学生的学号:";
for(int j=0;j
if(s[j].number==n)
if(flag==0)
if(c!='y'&&c!='n')
while(c=='y');
void Student::output(){
本系统所有学生数据如下:"&&
管理系统中没有输入数据!"&&
cout&&"姓名
学号 年龄 性别 班级 出生年月 地址 电话 E-mail c++ 英语 高数 体育 JAVA 总成绩 平均成绩
for(int k=0;k&i;k++)
cout&&s[k].name&&setw(7)
&&s[k].number&&setw(4)
&&s[k].age&&setw(5)
&&s[k].xingbie&&setw(4)
&&s[k].banji&&setw(6)
&&s[k].birthday&&setw(7)
&&s[k].dizhi&&setw(8)
&&s[k].phone&&setw(11)
&&s[k].E-mail&&setw(12)
&&(s[k]).cpro&&setw(5)
&&(s[k]).english&&setw(5)
&&(s[k]).math&&setw(4)
&&(s[k]).sport&&setw(5)
&&(s[k]).java&&setw(6)
&&s[k].allscore&&setw(10)
&&(s[k]).average&&setw(7)&&
void Student::order(){
for(int t=0;t
for(int k=t+1;k
while (s[t].allscore
temp=s[t];
s[t]=s[k];
while(yn!='y'&&yn!='n')
cout&&"操作错误!!!请重新输入:";
if(yn=='y')
cout&&"所有学生的成绩按总分从高到低的排名是:"&&
本系统所有学生数据如下:"&&
管理系统中没有输入数据!"&&
cout&&"姓名
学号 c++ 英语 高数 体育 JAVA 总成绩 平均成绩
for(int k=0;k&i;k++)
{ Student s[50];
cout&&s[k].name&&setw(7)
&&s[k].number&&setw(4)
&&s[k].age&&setw(5)
&&s[k].xingbie&&setw(4)
&&s[k].banji&&setw(6)
&&s[k].birthday&&setw(7)
&&s[k].dizhi&&setw(8)
&&s[k].phone&&setw(11)
&&s[k].E-mail&&setw(12)
&&(s[k]).cpro&&setw(5)
&&(s[k]).english&&setw(5)
&&(s[k]).math&&setw(4)
&&(s[k]).sport&&setw(5)
&&(s[k]).java&&setw(6)
&&s[k].allscore&&setw(10)
&&(s[k]).average&&setw(7)&&
void Student::save(){
保存成功!"&&
按赞数排序
C语言中main函数后面的函数必须有前置声明。。。
3329关注|1097收录
其他相似问题在C++中,我的问题关于:基类有同名成员引起的二义性 这个知识点_百度知道}

我要回帖

更多关于 c语言同名函数 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信