首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹projl下的工程pmjl,此工程包含有一个源程序文件projl.cpp。其中位于每个注释“//ERROR **** found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: (4,4)
请使用VC6或使用【答题】菜单打开考生文件夹projl下的工程pmjl,此工程包含有一个源程序文件projl.cpp。其中位于每个注释“//ERROR **** found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: (4,4)
admin
2019-05-14
67
问题
请使用VC6或使用【答题】菜单打开考生文件夹projl下的工程pmjl,此工程包含有一个源程序文件projl.cpp。其中位于每个注释“//ERROR **** found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为:
(4,4)
注意:只修改注释“//ERROR ****found****”的下一行语句,不要改动程序中的其他内容。
//projl.cpp
#include
using namespace std;
class Point{
public:
//ERROR*********found*********
Point(double x,double Y)一X(x),—y
(Y){)
double GetX()const{return x;)
double GetY()const{return_y;)
//ERROR*********found*********
void Move (double xOff,double
yOff)const
{x+=xOff;_y+=yOff;)
protected:
doublex;y;
};
int main()
{
Point pt(1.5,2.5);
pt.Move(2.5,1.5);
//ERROR*********found********* 以下语句输出pt成员x和y的值
cout<<‘(’<
return 0;
}
选项
答案
(1)Point(double x,double y):一x(x),一y(y){}或Point(double x,double y){—x:x;.y=y;{ (2)void Move(double xOff,double yOff) (3)cout<<’(’<
解析
本题主要考查Point类,其中涉及构造函数、成员函数及成员函数的调用。构造函数的语法经常考查到,一般会考查形参的类型及名称,本题考查的比较特别,是考查函数成员初始化列表的基本知识。
【解题思路】
(1)主要考查的是构造函数的成员初始化列表的语法,在成员列表之前必须加“:”。
(2)主要考查成员函数中const的使用,先看Move函数的函数体:
{_x+=xOff;—y+=yOff;}
可以看到Point类的两个私有成员一x和一y的值都发生了变化,因此Move函数不能使用eonst,因为只有在函数内不改变类的成员的值时才能使用const。
(3)主要考查私有成员不能被类外函数调用的知识。题目要求输出pt成员.x和-y的值,从Point类中的函数doubleGetX()const{return-x;}和double GetY()eonst{return—y;},可以分别得到一x和一y的值,因此这里使用语句cout<<‘(’<
【解题宝典】eonst用于限定变量的值不发生改变,涉及eonst函数时,就要先看函数体内部成员的值是否改变,如果改变了就会出现错误。当题目要求输出类的私有成员的值时,首先头脑中就要有一个概念:类外函数不能调用私有成员,只能通过成员函数调用。
转载请注明原文地址:https://www.kaotiyun.com/show/lE8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序段:intx=1,y=2,z=3;x=x^z:y=y^z;z=x^y:cout<<x<<y<<z;这个程序段的输出结果是______。
下列情况中,不会调用拷贝构造函数的是()。
在下面的类定义中,横线处应填入的内容是()。classFred{public:voidprint(){cout<<data<<end1;}voidsetData(doubled}{data
派生类的构造函数的成员初始化列表中,不能包含()。
有如下程序:#include<iostream>usingnamespacestd;classTestClass{public;~TestClass(){cout<<"BASE:;}};cla
下列说法中错误的是()。
下面程序的运行结果是()。#include<iostream.h>intx=5;intfan(inta){intc;c=x*a;returnc;}voidmain(
设有关键码序列(66,13,51,76,8l,26,57,69,23),要按关键码值递增的次序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为()。
有如下程序:#include<iostream>voidfun(int&x,inty){intt=x;x=y;y=t;}intmain(){inta[2]={23,42};fun(a[1],a
已知枚举类型定义语句为:enumToken{NUMBER,PLUS=5,MINUS,PRINT=10};则下列叙述中错误的是()。
随机试题
按定义验证
关于基础工程大体积混凝土浇筑施工技术的说法,正确的有()。
对于业务(经理)员来说,外贸跟单员是协助他们开拓国际市场、推销产品、协调生产和完成交货的业务助理。()
教师职业道德修养的任务包括()
Someoldpeopledon’tlikepopsongsbecausetheycan’t______somuchnoise.
自主创新能力
求.
一项关于研究青少年吸烟的调查显示,追踪那些吸烟的青少年的精神健康,一年之后,那些吸烟的青少年比那些不吸烟的患上抑郁的要高出4倍。因此,吸烟后的尼古丁可以改变大脑的化学机制,从而导致青少年患上抑郁症。以下选项如果正确,哪一项最能支持上述论证?
Lazinessisasin,everyoneknowsthat.Wehaveprobablyallhadlecturespointingoutthatlazinessisimmoral,thatitiswast
WhenanexpectantmomregularlyeatshermealsinfrontoftheTV,chancesareshe’llcontinuethathabitduringherbaby’sfeed
最新回复
(
0
)