首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面程序中对一维坐标点类Point进行运算符重载 #include using namespace std; class Point{ public: Point(int val){x=val;} Poin
下面程序中对一维坐标点类Point进行运算符重载 #include using namespace std; class Point{ public: Point(int val){x=val;} Poin
admin
2019-06-12
61
问题
下面程序中对一维坐标点类Point进行运算符重载
#include
using namespace std;
class Point{
public:
Point(int val){x=val;}
Point&operator++(){x++;return*this;}
Point operator++(int){Point old=*this;++(*this);return old;}
Int GetX()const{return x;}
private:
int x:
};
int main()
{
Point a(10);
cout<<(++a).GetX();
cout<
return 0;
}
编译和运行情况是( )。
选项
A、运行时输出1011
B、运行时输出1111
C、运行时输出1112
D、编译有错
答案
B
解析
此题考查的是重载增1运算符“++”。此题中,Point&operator++()重载的是前缀形式,而Point operator++(int)重载的是后缀形式。所以主函数中第1条输出语句输出11,此时a.x的值为11;第2条输出语句,首先创建了一个Point对象old保存自身,然后通过语句++(*this);调用前缀++的重载函数,因为返回值是改变前保存的old对象,故仍输出11。
转载请注明原文地址:https://kaotiyun.com/show/AF8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面()不是构造函数的特征。
在下面的4个关键字中用来说明虚函数的是()。
阅读以下程序:#includevoidmain(){staticinta[][2]:{5,3,1,2};imi,j,s1=0;for(i=0;i
队列是限定在表的一端进行插入和在另一端进行删除操作的线性表。允许插入的一端称作_____________。
下列程序将x、y和z按从小到大的顺序排列,横线处应添加语句()。templatevoidfun(_________________){Ta;if(x>y)
下列有关指针的用法中,错误的是()。
下面关于面向对象的程序设计方法中,正确的是()。
一个函数功能不太复杂但要求被频繁调用,应选用
下列叙述中正确的是
将E-R图转换为关系模式时,实体和联系都可以表示为
随机试题
数字图像处理系统主要由()个部分组成。
陶瓷材料耐热、耐腐蚀、耐磨性能好,分别用于_______。
药物作用的两重性指( )。
FIDIC《施工合同条件》中,业主的索赔主要限于( )等违约行为导致的业主损失。
用于记录、核算、反映财政预算内资金和纳入财政预算管理的政府性基金的收入和支出活动的账户是()。
(2016年)关于定金的说法,错误的是()。
根据我国有关法律规定,全国人民代表大会预备会议的主要内容有()。(2010多56)
下列关于芯片体系结构的叙述中,正确的是
Marywasashywomanandtook______behindaratherforbiddingbluntnessofmanner.
Mostdoctorsinarecentsurveysaidthatannualphysicalexaminationswereeffectivewith【M1】______detectingillne
最新回复
(
0
)