国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C++習題與解析(類和對象-04)

2019-11-17 05:44:16
字體:
來源:轉載
供稿:網友

題 1 分析以下程序的執行結果
#include<iostream.h>
class Sample
{
int x,y;
public:
Sample(){x=y=0;}
Sample(int a,int b){x=a;y=b;}
void disp()
{
cout<<"x="<<x<<",y="<<y<<endl;
}
};

void main()
{
Sample s1,s2(2,3);
s1.disp();
s2.disp();
}

解:
本題說明了構造函數的調用順序。首先定義了一個類Sample,在main()中定義了它的兩個對象,定義s1對象時調用其默認構造函數(x=0,y=0),定義s2對象時調用其重載構造函數(x=2,y=3),然后,調用各自的成員函數輸出各自的數據成員。所以輸出為:
x=0,y=0
x=2,y=3----------------------------------------------- 題 2 分析以下程序執行的結果
#include<iostream.h>
class Sample
{
int x,y;
public:
Sample() {x=y=0;}
Sample(int a,int b) {x=a;y=b;}
~Sample()
{
if(x==y)
cout<<"x=y"<<endl;
else
cout<<"x!=y"<<endl;
}
void disp()
{
cout<<"x="<<x<<",y="<<y<<endl;
}
};

void main()
{
Sample s1(2,3);
s1.disp();
s1.~Sample();
}

解:
本題說明了可以顯式調用析構函數。首先定義了一個類Sample,在main()中定義了它的一個對象,定義s1對象時調用其重載構造函數(x=2,y=3),然后,調用其成員函數輸出數據成員,然后調用一次析構函數,最后在退出程序時又自動調用析構函數,所以輸出為:
x=2,y=3
x!=y
x!=y
注重:析構函數不同于構造函數,析構函數既能被顯式調用,也能被隱式調用。
---------------------------------------------------- 題 3 分析以下程序的執行結果
#include<iostream.h>
class Sample
{
int x,y;
public:
Sample() {x=y=0;}
Sample(int a,int b) {x=a;y=b;}
~Sample()
{
if(x==y)
cout<<"x=y"<<endl;
else
cout<<"x!=y"<<endl;
}
void disp()
{
cout<<"x="<<x<<",y="<<y<<endl;
}
};

void main()
{
Sample s1,s2(2,3);
s1.disp();
s2.disp();
}

解:
本題說明了析構函數的調用順序,這里定義了兩個對象,先順序調用s1和s2對象的構造函數,再調用各自的成員函數disp(),最后順序調用s2和s1的析構函數。所以輸出為:
x=0,y=0
x=2,y=3
x!=y
x=y


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 车险| 上杭县| 应用必备| 高平市| 濮阳市| 略阳县| 同仁县| 泰州市| 宜君县| 迁安市| 温宿县| 剑川县| 尉氏县| 韩城市| 承德市| 梁山县| 玉田县| 南涧| 松阳县| 新泰市| 宁远县| 花垣县| 东源县| 焦作市| 桃园县| 黔西县| 旌德县| 满城县| 炉霍县| 三明市| 富蕴县| 上饶县| 会理县| 丰都县| 三河市| 育儿| 印江| 湄潭县| 达拉特旗| 平泉县| 临泉县|