首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modil.epp,该程序运行时有错,请改正其中的错误,使程序正常运行,输出的结果为: Constructor,i=0, Destructor 注意:错误的语句在//********error*
使用VC6打开考生文件夹下的源程序文件modil.epp,该程序运行时有错,请改正其中的错误,使程序正常运行,输出的结果为: Constructor,i=0, Destructor 注意:错误的语句在//********error*
admin
2021-06-10
49
问题
使用VC6打开考生文件夹下的源程序文件modil.epp,该程序运行时有错,请改正其中的错误,使程序正常运行,输出的结果为:
Constructor,i=0,
Destructor
注意:错误的语句在//********error********的下面,修改该语句即可。
1 #include
2 class cobj
3 i
4 int i ;
5 public:
6 CObj();
7 void display();
8 -CObj();
9 };
10 //********error********
11 cobj:cobj()
12 {
13 cout<<"Constructor"<<",";
14 i=0;
15 }
16 //********error********
17 cobj:display()
18 i
19 cout<<"i="<
20 }
21 //********error********
22 cobj:cobj()
23 {
24 cout<<"Destructor"<
25 }
26 void main()
27 {
28 cobj a ;
29 a.display();
30 }
选项
答案
(1)CObj::CObj() (2)VOid CObj::display() (3)CObj::~CObj()
解析
程序当中定义了类CObj,成员为int型变量i,display函数、构造函数和析构函数,在构造函数中显示“Constructor”,display函数显示成员i的值,析构函数显示“Destructor”,因此程序运行结果就是定义对象,隐式调用构造函数,然后调用display()函数显示i的值,最后清除对象时调用析构函数。
[解题思路]
(1)在类的外部定义成员函数时,必须在成员函数前面加上类名和作用域运算符(::),作用域运算符用来表示某个成员属于哪个类,使用格式为:<类名>::<成员函数>(<参数函数>),因此第1个标识下应改为CObj::CObj(),默认构造函数没有参数。
(2)第2个标识下“CObj:display()”,从其后的语句看,这是在类外实现CObi函数,因此也有作用域运算符使用错误问题,display()函数返回值为void,因此第2个标识下应改为void CObj::display()。
(3)第3个标识下“CObj:CObj()”,显然这里是在类外实现析构函数,析构函数是一个特殊的函数,它的名字和类名相同,并在前面加“~”字符,用来与构造函数加以区别,因此第3个标识下应改为CObj::~CObj()。
转载请注明原文地址:https://kaotiyun.com/show/oVfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;classA{public:A(){cout
有如下程序:#includeusingnamespacestd;classTestClass{public:~TestClass0{cout
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程包含有一个源程序文件proj2.cpp,其中定义了Stack类和ArrayStack类。stack是一个用于表示数据结构“栈”的类,栈中的元素是字符型数据。Stack
使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并使程序输出的结果为:TestClass2TestClass3注意:不要改动main函数,不能增行或删行,也不能更改程序的结
下列关于默认参数的叙述中,错误的是
有如下类定义:classTest{public:Test(){a=0;c=0;}//①intf(inta)eonst{this->a=a;}//②staticintg(){retuma
请打开考生文件夹下的解决方案文件proj1,该工程中含有一个源程序文件proj1.cpp。其中位于每个注释“//ERROR****found****”之后的一行语句有错误。请改正这些错误,使程序的输出结果为:注意:只能修改注释“//ERROR**
请打开考生文件夹下的解决方案文件pmj3,其中声明了一个单向链表类sList。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Prepend。在main函数中给出了一组测试数据,此时程序的输出应为:B->A->
请打开考生文件夹下的解决方案文件proj1,此工程中含有一个源程序文件proj1.cpp。其中位于每个注释“//ERROR****found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为:Thevalueis:10
在函数中,可以用auto、extem、register和static这四个关键字中的一个来说明变量的存储类型,如果不说明存储类型,则默认的存储类型是()。
随机试题
关于文件的含义,比较正确的说法应该是()。
在你值班期间,财务室被盗,作为财务管理人员。你该怎么办?
(2012年真题)我国《刑法》第264条规定:“盗窃公私财物,数额较大的,或者多次盗窃、入户盗窃、携带凶器盗窃、扒窃的,处三年以下有期徒刑、拘役或者管制,并处或者单处罚金;数额巨大或者有其他严重情节的,处三年以上十年以下有期徒刑,并处罚金;数额特别巨大或者
2003年6月23日,《城市生活无着的流浪乞讨人员救助管理办法》正式发布,并于8月1日正式实施。1982年发布的《城市流浪乞讨人员收容遣送办法》同时被废止。这一变化体现了
已知某一位的字号是5,位号为14,假设字号也从0开始编号。则对应的内存块号是(假设内存块从0开始编号)
通过破坏产生死锁的4个必要条件之一,可以保证不让死锁发生。其中采用资源有序分配法,是破坏( )。
以下能正确定义数组并正确赋初值的语句是______。
______andZairedonotborderEthiopia?______gaineditsindependencethelatest?
ChooseFOURletters,A-G.WhichFOURofthefollowingarerequiredofstudentteachers?AweeklyjournalBsamplelessonplansC
MasstransportationrevisedthesocialandeconomicfabricoftheAmericancityinthreefundamentalways.Itcatalyzedphysical
最新回复
(
0
)