?? 14-15.txt
字號:
/* 范例:14-15 */
#include <iostream.h>
class A
{
private:
int a;
public:
A() /* 構造函數名稱必須與類名稱相同 */
{a=10;cout<<"我把成員變量a初始化了,a的值是"<<a<<endl;}
~A(){cout<<"deleted";getchar();}
};
void main()
{
A obj1; // 當在建立對象時會調用構造函數且只執行一次。
/* 對象obj2的生命范圍只在{}區塊內 */
{
A obj2; // 當在建立對象時會調用構造函數且只執行一次。
obj2; // 構造函數只在對象建立時執行一次,這里不會執行構造函數。
cout<<"在對象ojb2被刪除時會自動執行析構\n";
cout<<"下面結束時將obj2的對象執行析構函數"<<endl;
} // 對象obj2在此釋放
cout<<"在對象ojb1被刪除時會自動執行析構\n";
cout<<"故在下面結束時將obj1的對象執行析構函數"<<endl;
}
程序執行結果:
我把成員變量a初始化了,a的值是10
我把成員變量a初始化了,a的值是10
在對象ojb2被刪除時會自動執行析構
下面結束時將obj2的對象執行析構函數
deleted
在對象ojb1被刪除時會自動執行析構
故在下面結束時將obj1的對象執行析構函數
deleted
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -