類的建構函式是類的一種特殊的成員函式,它會在每次建立類的新物件時執行。
建構函式的名稱與類的名稱是完全相同的,並且不會返回任何型別,也不會返回 void。建構函式可用於為某些成員變數設定初始值。
下面的例項有助於更好地理解建構函式的概念:
例項
#include using namespace std;
class line;
// 成員函式定義,包括建構函式
line::line(void)
void line::setlength( double len )
double line::getlength( void )
// 程式的主函式
int main( );
// 成員函式定義,包括建構函式
line::line( double len)
void line::setlength( double len )
double line::getlength( void )
// 程式的主函式
int main( )
上面的語法等同於如下語法:
line::line( double len)
假設有乙個類 c,具有多個字段 x、y、z 等需要進行初始化,同理地,您可以使用上面的語法,只需要在不同的字段使用逗號進行分隔,如下所示:
c::c( double a, double b, double c): x(a), y(b), z(c)
類的析構函式是類的一種特殊的成員函式,它會在每次刪除所建立的物件時執行。
析構函式的名稱與類的名稱是完全相同的,只是在前面加了個波浪號(~)作為字首,它不會返回任何值,也不能帶有任何引數。析構函式有助於在跳出程式(比如關閉檔案、釋放記憶體等)前釋放資源。
下面的例項有助於更好地理解析構函式的概念:
例項
#include using namespace std;class line;
// 成員函式定義,包括建構函式
line::line(void)
line::~line(void)
void line::setlength( double len )
double line::getlength( void )
// 程式的主函式
int main( )
{ line line;
// 設定長度
line.setlength(6.0);
cout << "length of line : " << line.getlength() 《當上面的**被編譯和執行時,它會產生下列結果:
object is being createdlength of line : 6
object is being deleted
類和物件 構造析構函式
a.類和物件 1.關鍵字class表明正宣告乙個類,類中資料成員 屬性 和資料功能 行為 經過封裝,使得使用者通過外部介面訪問。2.類的封裝隱藏了實現細節,同時也保證了資料的安全性。3.只要類的外部介面不變,內部實現細節再怎麼修改,使用類庫的程式也不用修改。4.物件是類型別的變數。5.內聯成員函式 ...
PHP 類和物件(建構函式和析構函式)
1.建構函式 construct php 5 允行開發者在乙個類中定義乙個方法作為建構函式。具有建構函式的類會在每次建立物件時先呼叫此方法,所以非常適合在使 用物件之前做一些初始化工作。如下例1 class fun1 tom new fun1 結果為 開頭就呼叫建構函式 注意 如果子類中定義了建構函...
類 建構函式和析構函式
一.類 類定義的變數就是物件 1.建構函式 只有 建立物件的時候系統自動呼叫的函式 初始化物件 1 建構函式名與類名相同 2 建構函式沒有返回值 3 建構函式可以過載 注意 關於建構函式 1 如果建構函式被呼叫了,則一定有乙個新物件被建立了 2 如果有乙個新物件被建立,則一定有乙個建構函式被呼叫了 ...