首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下语句: TestClass1:0 TestClass2 注意:不要改动main函数,不能增行或删行,也不能更改程序的结
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下语句: TestClass1:0 TestClass2 注意:不要改动main函数,不能增行或删行,也不能更改程序的结
admin
2018-10-23
79
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下语句:
TestClass1:0
TestClass2
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//******error******的下面。
1 #include<iostream.h>
2 struct TestClass1
3 {
4 TestClass1(int i=0)
5 {
6 m_i=i;
7 }
8 void print()
9 {
10 cout<<’’TestClass1:’’<<m_i<<end1;
11 };
12 int m_i;
13 };
14 class TestClass2
15 {
16 public:
17 TestClass2()
18 {
19 }
20 void print()
21 {
22 cout<<’’TestClass2’’<<end1;
23 };
24 //********error********
25 private:
26 ~TestClass2()
27 {
28 }
29 };
30 int main()
31 {
32 //********error********
33 TestClass1 obj1();
34 //********error********
35 TestClass2 obj2();
36 obj1.print();
37 obj2.print();
38 return 0;
39 }
选项
答案
(1)public: (2)TestClassl obj1(0);或TestClass1 obj1; (3)TestClass2 obj2;
解析
程序要求输出TestClass1:0和TestClass2。从已定源程序的main主函数开始入手,可以看出程序首先定义TestClass1和TestClass2类型的变量,然后通过调用其中的print成员函数实现输出结果。
(1)第1个标识下的“private:~TestClass2()”是析构函数,它不是私有的,所以这里应该为“删除private:或修改为public:”。
(2)第2个标识下的“TestClass1 obj1();”语句是定义一个TestClass1类型的对象obj1(),根据类TestClass1构造函数的定义“TestClass1(int i=0)”,知道存在整型参数,应该补充参数,或者只是先定义一个对象名,然后在使用时补充参数,即修改为“TestClass1 obj1(0);或TestClass1 obj1;”。
(3)同理第3个标识下的“TestClass2 obj2();”语句修改为“TestClass2 obj2;”。
转载请注明原文地址:https://kaotiyun.com/show/05Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
main函数中发生编译错误的语句是______。#include<iostream.h>classA{public:inta;constintb;A():a(10
类中包含了一个静态成员函数,则main函数中和P.fl(P);语句具有同样功能的语句为______。#include<iostream.h>classM{public:M(intA){A=a;B+=a;}
假定MyClass为一个类,则该类的拷贝构造函数的声明语句为
内联函数是通过______来实现的,因此内联函数是真正的函数。
下列程序的运行结果是()。#include<iostream.h>intx=5;intfun(intA){intC;C=X*a;returnC;}voidmain()
有以下程序:#include<iostream>usingnamespacestd;ClassA{public:A(){tout{("A"}};classB{public:B(){cout<<"
有以下程序:main(){inta=5,b=4,c=3,d=2;if(a>b>C)cout<<d<<end1;elseif((c-1)=d)==1)tout<<d+1<<endl;elsecou
下列程序输出的结果是()。#include<stdio.h>un1(chara,charb){charc;c=a;a=b;b=c;}fun2(char*a,charb){charc;c=*a;*a=b;b=c;}
在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classBase{protected:voidfun(){}};classD
类MyClass的定义如下:classMyClass{public:MyClass(){value=0;}SetVariable(inti){value=i;}private:intvalue
随机试题
什么叫收边?
HongKong’sonceboomingmovieindustry—oneoftheworld’sbiggest—facesextinctionasvideopiracy(盗版)becomesmoreandmorep
患者男性。56岁。受凉后出现喘息咳逆,呼吸困难,鼻翼煽动,不能平卧。
pH计中的电极是属于A.酶电极B.气敏电极C.固体膜电极D.离子交换电极E.汞电极
设计方项目管理的任务包括( )。
假设一位投资者将10000元存入银行,1年到期后得到本息支付共计11000元,投资的绝对收益是()。
下列业务中,应该填制现金收款凭证的是()。
下列属于教师评价学生的优越性的有()。
假设安装了Word的公式编辑器,要在Word文档中编辑出这个公式,正确的操作步骤是(46)。
AttheinternationalterminalforNorthwestAirlinesatJohnF.KennedyInternationalAirportinNewYork,passengerswaitedupto
最新回复
(
0
)