首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出: 10 TestClass1 注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//****
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出: 10 TestClass1 注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//****
admin
2019-05-14
56
问题
使用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
有如下程序:#include<iostream>usingnamespacestd;classMonitor{public:Monitor(chart):type(t){}voidPr
以下程序的执行结果为()。#include<iostream.h>classSample{intn;public:Sample(inti){n=i;}operator++(){n++;}
执行语句:{cout<<setfill(’*’)<<setw(10)<<seffill(’#’)<<left<<123<<"0K"<<end1;return0;}后将输出()。
若有如下程序段:#include<iostream>usingnamespacestd;intmain(){char*p="abcdefgh",*r;r=p;cout<<*r<<end1;
设有关键码序列(66,13,51,76,8l,26,57,69,23),要按关键码值递增的次序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为()。
有如下程序:#include<iostream>usingnamespacestd;classBase{public;intm,n;};classDerived1:______Base{};
有如下程序:#include<iostream>voidfun(int&x,inty){intt=x;x=y;y=t;}intmain(){inta[2]={23,42};fun(a[1],a
随机试题
Whatjobdidthemangetfirst?Hegotthefirstjobas_________________.
形成视网膜裂孔危险性最小的周边视网膜变性是
患者,男性,65岁。诊断为胆道泥沙样结石,拟行胆总管空肠RouxenY吻合术。WBC11.5×109/L,中性粒细胞0.75。血清总胆红素162μmol/L,谷丙转氨酶215U/L,凝血酶原时间(PT)18s。患者口服灌肠液的时间为
超额存款准备金主要用于()。
管理信息的特征包括()。
哥白尼的“日心说”与当时的宗教思想、占统治地位的亚里士多德的物理学以及人们的“常识”均相抵触,一开始遭到许多人的反对,直到牛顿发现万有引力定律之后才逐步被天文学家们承认。随着现代科技的发展,“日心说”也已经被否定,太阳只是银河系中一颗普通的恒星。由此说明(
Intheolddays,childrenwerefamiliarwithbirthanddeathaspartoflife.ThisisperhapsthefirstgenerationofAmericany
【B1】【B8】
A、Itcanavoidthenecessityofcarryinglargeamountofcash.B、Youneedn’tpurchaselargeamountsoftraveler’schecks.C、You
Lookattheboxfilesonthisshelf.Theyareintheofficeofthewomanwhoproducesthemonthlycompanynewsletter.Forquesti
最新回复
(
0
)