類的建構函式是類的一種特殊的成員函式,它會在每次建立類的新物件時執行。
建構函式的名稱與類的名稱是完全相同的,並且不會返回任何型別,也不會返回 void。建構函式可用於為某些成員變數設定初始值。
下面的例項有助於更好地理解建構函式的概念:
#include當上面的**被編譯和執行時,它會產生下列結果:using
namespace
std;
class
line
;// 成員函式定義,包括建構函式
line
::line
(void
)void
line
::setlength
(double
len
)double
line
::getlength
(void
)// 程式的主函式
intmain()
object預設的建構函式沒有任何引數,但如果需要,建構函式也可以帶有引數。這樣在建立物件時就會給物件賦初始值,如下面的例子所示:isbeing created
length
of line
:6
#include當上面的**被編譯和執行時,它會產生下列結果:using
namespace
std;
class
line
;// 成員函式定義,包括建構函式
line
::line
(double
len)
void
line
::setlength
(double
len
)double
line
::getlength
(void
)// 程式的主函式
intmain()
object使用初始化列表來初始化字段:isbeing created
,length =10
length
of line :10
length
of line
:6
line上面的語法等同於如下語法:::line
(double
len):
length
(len
)
line假設有乙個類 c,具有多個字段 x、y、z 等需要進行初始化,同理地,您可以使用上面的語法,只需要在不同的字段使用逗號進行分隔,如下所示:::line
(double
len)
c::c類的析構函式是類的一種特殊的成員函式,它會在每次刪除所建立的物件時執行。(doublea,
doubleb,
doublec):
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
)// 程式的主函式
intmain()
objectisbeing created
length
of line :6
object
isbeing deleted
C 類建構函式 析構函式
類的建構函式是類的一種特殊的成員函式,它會在每次建立類的新物件時執行。建構函式的名稱與類的名稱是完全相同的,並且不會返回任何型別,也不會返回 void。建構函式可用於為某些成員變數設定初始值。下面的例項有助於更好地理解建構函式的概念 include using namespace std class...
C 類建構函式 析構函式
類的建構函式是類的一種特殊的成員函式,它會在每次建立類的新物件時執行。建構函式的名稱與類的名稱是完全相同的,並且不會返回任何型別,也不會返回 void。建構函式可用於為某些成員變數設定初始值。下面的例項有助於更好地理解建構函式的概念 include using namespace std class...
C 類建構函式 析構函式
析構函式和建構函式是一對。建構函式用於建立物件,而析構函式是用來撤銷物件。簡單的說 乙個物件出生的時候,使用建構函式,死掉的時候,使用析構函式。建構函式 和 析構函式 各有各的用途,在建構函式中,我們來獲取資源 在析構函式中,我們來釋放資源。釋放了之後,這些資源就會被 可以被重新利用。比如說,我們在...