建構函式和析構函式

2021-07-24 18:27:01 字數 926 閱讀 9639

c++語言之前有學過一些,很久時間沒用語法忘得差不多了,我準備重拾c++,,儘管現在還帶有不少c的風格,但寫部落格是為了備忘,也給日後的學習做乙個參考,以煉表為例,運用c++中的建構函式對鍊錶進行初始化,析構函式來銷毀鍊錶,特別是在物件很多的時候,比如要定義多個鍊錶物件,c++相比c就有了很大優越性。

#include

using

namespace

std;

typedef

int data;

struct lnode;

struct list

~list()

cout

<< "鍊錶已銷毀"

<< endl;

}void addnode(int d)

void print()

cout

<< endl;

}int getcount()

return i;

}};int main()

for(i=10; i<20; i++)

cout

<< "list1: ";

l1.print();

cout

<< "list2: ";

l2.print();

cout

<< "list1-length = "

<< l1.getcount() << endl;

cout

<< "list2-length = "

<< l2.getcount() << endl;

return

0; //結束時系統自動呼叫析構函式將兩鍊錶物件銷毀

}

建構函式和析構函式

建構函式沒有返回值,不能被顯示的呼叫。它是在定義物件時由系統自動執行的,而且只執行一次。如果沒有定義建構函式,系統會自動生成乙個建構函式,只是這個建構函式的函式體是空,沒有引數,也不執行任何初始化的操作。帶引數的建構函式 有一種簡練,方便的寫法 建構函式的引數初始化表 box int h,int w...

析構函式和建構函式

每個物件生成的時候都要完成物件的初始化,如設定屬性的初始值。c 中規定每個類都有乙個初始值,如果沒有,系統會產生乙個預設的建構函式。這個建構函式沒有任何引數,不做任何額外的工作。但往往我們會自己寫乙個建構函式,用來進行特殊的初始化工作。這樣的話,編譯器就不會再為其生成預設的建構函式。class 類名...

建構函式和析構函式

stock hot 因為資料部分的訪問狀態是私有的,程式不能訪問資料成員。建立stock的建構函式,由於需要為stock提供3個值,因此應為建構函式提供3個引數值,程式設計師可能指向設定company成員,而其他的設定為0 使用預設引數完成 宣告如下 stock const char co,int ...