首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出: 10 TestClass1 注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//****
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出: 10 TestClass1 注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//****
admin
2019-05-14
48
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出:
10
TestClass1
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//******error******的下面。
1 #include<iostream>
2 Class TestClass1
3 {
4 public:
5 TestClass1(){
6 };
7 //********error+********
8 private:
9 virtual~TestClass1()
10 {
11 using namespace std;
12 cout<<’’TestClass1’’<<end1;
13 };
14 };
15 class TestClass2:public TestClass1
16 {
17 public:
18 //********error********
19 explicit TestClass2(int i)
20 {
21 m_i=i;
22 };
23 TestClass2& operator()(int i)
24 {
25 this一>m_i=i;
26 }
27 void print()
28 {
29 //********error********
30 cout<<m_i<<end1;
31 }
32 private:
33 int m_i;
34 };
35 void fun(TestClass2 C1)
36 {
37 C1.print();
38 }
39 int main()
40 {
41 fun(10);
42 return 0;
43 }
选项
答案
(1)删除“private:”语句 (2)TestClass2(int i) (3)std::cout<<m_i<<std::end1;
解析
程序要求输出值为10,TestClass1。从己给定源程序的main主函数开始入手,main主函数首先调用fun函数,fun调用TestClass2中的print()函数,其中TestClass2继承了TestClass1。
(1)第1个标识下的“virtual~TestClass1()”语句是TestClass1()析构函数,不是私有函数,所以删除“private:”。
(2)“explicit TestClass2(int i)”构造函数语句中的“explicit”是禁止隐式转换。程序中无法实现对类TestClass2的直接使用,所以这里应该将其删除。即“TestClass2(int i)”。
(3)第3个标识下实现,fun函数中m_i的标准输出,即在屏幕上输出10。在程序中用到C++标准库时,要使用std标准命名空间进行限定。cout为标准库函数,所以要声明cout是在命名空间std中定义的流对象,即“std::cout<<m_i<<std::end1;”或者添加“using namespace std;”。
转载请注明原文地址:https://kaotiyun.com/show/ME8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include<iostream>usingnamespaeestd;classAnimal{public:virtualchar*getType()const{return"Anim
非成员函数应该声明为类______函数才能访问该类的私有成员。
下面的函数利用递归实现了求1+2+3+…+n的功能:intsum(intn){if(n==0)return0;elsereturnn+saln(n-1);}在执行SUm(10)的过程中,递归调用s
有如下程序段:charC[20]="examination";C[4]=0;cout<<c<<endl;这个程序的输出结果是______。
符合结构化原则的三种基本控制结构是:选择结构、循环结构和______。
派生类的构造函数的成员初始化列表中,不能包含()。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
有如下程序:#include<iostream>usingnamespacestd;classTestClass{public;~TestClass(){cout<<"BASE:;}};cla
有如下程序:#include<iostream>usingnamespacestd;voidfun(int&x,inty){intt=x;x=y;y=t;}intmain(){inta[2]={
有如下程序:#include<iostream>usingnamespacestd;classCon{charID;public:Con():ID(’A’){cout<<1;}Con(
随机试题
医疗保险
A.蠕形螨病B.疥螨病C.脓皮症D.犬小孢子菌病E.马拉色菌病犬脱毛,搔痒,患部在暗室用伍氏灯照射呈现苹果绿荧光。最有可能的诊断是()。
对于债券利率的风险,下列叙述正确的是( )。
各题所给出的4个选项中,至少有1项符合题目要求
某工厂车组做一批零件。现有甲、乙、丙、丁四个小组,假设四组一起完成共需6小时,由甲、乙、丙三组一起完成需8小时,乙、丙、丁一起需12小时,那么甲、丁两组一起完成需要()小时。
《毛诗序》中提到了《诗经》“六艺”,即“风、赋、比、兴、雅、颂”。其中“兴”指的是()?
设A和B都是m×n实矩阵,满足r(A+B)=n,证明ATA+BTB正定.
如下图所示,某园区网用10Gbps的POS技术与Internet相连,POS接口的帧格式是SONET。园区网内部路由协议采用OSPF,与Intemet的连接使用静态路由协议。该园区网还通过一台Cisco2511和Modempool设备为用户提供拨号入网服务
WhendidtheearthquakehappeninTangshan?
Irespectyourpersistenceafterthefailure,butyou______(不该把错误推到别人身上).
最新回复
(
0
)