析構函式,第一次聽說這個函式的名稱,那這個函式到底是幹嘛的呢?什麼才是析構函式吶?
定義:在例項銷毀的時候呼叫的函式
2.1 定義
class dog(object):"dog class"
def __init__(self,name):
self.name = name
def sayhi(self):
print("the dog is sayhi".format(self.name))
def __del__(self): #定義析構函式
print("del.....run...")
d = dog("alex")
del d
import time
time.sleep(5)
#輸出del.....run...
①析構函式說明時候呼叫呢?
其實每乙個物件都是乙個應用,就像每乙個房間都有門牌號一樣, 只要這個物件的引用被清空時,就會自動執行,就像上面的del d,其實python中有自動垃圾**機制,會定時去的去**一些被清空的應用,而析構函式就是在引用被清空之後會自動執行
②析構函式的作用?
比如說server端接受很多客戶端的連線,當你手動遮蔽你的sever端的時候,這個時候客戶端還在正常的連線,如果sever端用類寫的,你就可以delete server端的同時,在__del__()寫一些東西,說去close掉很多客戶端的連線。說白了,析構函式就是做一些程式的收尾工作。
C 學習之類的析構函式
c 學習之類的析構函式 一 認識析構函式 這裡我們來簡單說說類的析構函式,它是類的乙個成員函式,名字由波浪號加類名構成。看它的名字我們大概就能聯想到他功能,是執行與建構函式相反的操作 釋放物件使用的資源,並銷毀非static成員。同樣的,我們來看看析構函式的幾個特點 1.函式名是在類名前加上 無引數...
C 之類的構造與析構(一)
今天我們了解一下類的建構函式 析構函式。其中建構函式會提到預設建構函式 過載建構函式和複製建構函式。好了,現在開始我們的旅程吧。首先溫習一下c和c 中分配記憶體的方法。我們知道,c中的malloc free和c 中的new delete是用來分配記憶體和釋放記憶體的,這裡的記憶體是前面博文提到的 堆...
public 函式 C 的this函式和析構函式
你可以因為現任不好而分手,但千萬不要認為別人更好,永遠有人更好,眼下便是更好。網易雲熱評 一 this函式 對於普通的成員函式,this指向呼叫該函式的物件 對於建構函式,this指向正在建立的物件 include using namespace std class teacher 通過this區分...