C 類建構函式 析構函式

2021-10-06 04:59:59 字數 1254 閱讀 5735

類的建構函式是類的一種特殊的成員函式,它會在每次建立類的新物件時執行。

建構函式的名稱與類的名稱是完全相同的,並且不會返回任何型別,也不會返回 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 created

length of line : 6

object is being deleted

C 類建構函式 析構函式

類的建構函式是類的一種特殊的成員函式,它會在每次建立類的新物件時執行。建構函式的名稱與類的名稱是完全相同的,並且不會返回任何型別,也不會返回 void。建構函式可用於為某些成員變數設定初始值。下面的例項有助於更好地理解建構函式的概念 include using namespace std class...

C 類建構函式 析構函式

類的建構函式是類的一種特殊的成員函式,它會在每次建立類的新物件時執行。建構函式的名稱與類的名稱是完全相同的,並且不會返回任何型別,也不會返回 void。建構函式可用於為某些成員變數設定初始值。下面的例項有助於更好地理解建構函式的概念 include using namespace std class...

C 類建構函式 析構函式

析構函式和建構函式是一對。建構函式用於建立物件,而析構函式是用來撤銷物件。簡單的說 乙個物件出生的時候,使用建構函式,死掉的時候,使用析構函式。建構函式 和 析構函式 各有各的用途,在建構函式中,我們來獲取資源 在析構函式中,我們來釋放資源。釋放了之後,這些資源就會被 可以被重新利用。比如說,我們在...