首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面程序中对一维坐标点类Point进行运算符重载 #include<iostream> using namespace std; class Point{ public: Point(int val){x=val;}
下面程序中对一维坐标点类Point进行运算符重载 #include<iostream> using namespace std; class Point{ public: Point(int val){x=val;}
admin
2020-04-07
64
问题
下面程序中对一维坐标点类Point进行运算符重载
#include<iostream>
using namespace std;
class Point{
public:
Point(int val){x=val;}
Point&operator++(){x++;rcturn*this;}
Point operator++(int){Point old=*this;++(*this);return old;}
Int GetX()const{return x;}
private:
int x;
};
hat main()
{
Point a(10);
cout<<(++a).GetX();
cout<<a++.GetX();
return 0;
}
编译和运行情况是( )。
选项
A、运行时输出1011
B、运行时输出1111
C、运行时输出1112
D、编译有错
答案
B
解析
此题考查的是重载增1运算符“++”。此题中,Point&operator++()重载的是前缀形式,而Point operator++(int)重载的是后缀形式。所以主函数中第1条输出语句输出11,此时a.x的值为11:第2条输出语句,首先创建了一个P0int对象old保存自身,然后通过语句++(*this);调用前缀++的重载函数,因为返回值是改变前保存的old对象,故仍输出11。
转载请注明原文地址:https://kaotiyun.com/show/6f8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
必须用一对大括号括起来的程序段是()。
关于下面程序的说法,正确的是()。#include<iostream>usingnamespacestd;classx{inta;public:x(){a=3;}
当要求两个变量不能同名时,它是指在( )的情况下。
下列关于C++函数的描述中正确的是()。
下列叙述中,正确的是
结构化程序设计的3种结构是
在C++中,动态创建对象可以使用【 】操作符来完成。
有如下语句序列:intk=0:d0{k+=5;cout<<’$’;}wbile(k<19);while(k-->0)cout<<’*’;执行上面的语句后,序列输出字符$和*的个数分别是A)4和20B)5和2
当用数组元素作函数参数时,这属于【】传递。
下列字符串中,正确的C++标识符是
随机试题
男性,46岁,左下肢酸胀沉重,小腿出现“蚯蚓状”团块4年。查体:血压17.2/12.0kPa(130/90mmHg),右下肢正常,左小腿可见明显的静脉曲张,内踝处皮肤增厚,有色素沉着。TrendelenburgⅠ式试验和Ⅱ式试验均阳性,Pratt试验阳
念珠菌性口炎临床上可分为
男,30岁。因患精神分裂症常年服用氯丙嗪,症状好转,但近日来出现肌肉震颤、动作迟缓、流涎等症状,诊断为氯丙嗪引起的帕金森综合征,应采取何药治疗
物理化学配伍禁忌的处理方法,不包括
根据《建设工程监理范围和规模标准规定》,项目总投资额在3000万元以上的()工程项目,称为大中型公用事业工程。
安全生产行政主管部门对各部门的企业职工伤亡事故情况实行( )考核。
根据《会计档案管理办法》,企业银行存款余额调节表的保管年限为15年。()
【焚书坑儒】南京农业大学1999年中国通史真题
设A是m×n实矩阵,AT是A的转置矩阵,证明方程组(Ⅰ):Ax=0和(Ⅱ):ATAx=0是同解方程组.
______whenhediscoveredthecosts,nevertheless,eventually,hewent.
最新回复
(
0
)