C++ 中的解構函式
C++ 中的解構函式是對類中的物件進行刪除的成員函式。當類物件超出範圍時(例如函式結束、程式結束、呼叫 delete 變數等)便會呼叫它們。
解構函式不同於普通成員函式,因為它們不帶任何引數,也不返回任何內容。此外,解構函式的名稱與其類相同,其名稱前加一個波浪號(~)。
以下給出了演示 C++ 中解構函式的程式。
示例
#include<iostream>
using namespace std;
class Demo {
private:
int num1, num2;
public:
Demo(int n1, int n2) {
cout<<"Inside Constructor"<<endl;
num1 = n1;
num2 = n2;
}
void display() {
cout<<"num1 = "<< num1 <<endl;
cout<<"num2 = "<< num2 <<endl;
}
~Demo() {
cout<<"Inside Destructor";
}
};
int main() {
Demo obj1(10, 20);
obj1.display();
return 0;
}輸出
Inside Constructor num1 = 10 num2 = 20 Inside Destructor
在上述程式中,類 Demo 包含一個帶引數的建構函式,該函式使用 n1 和 n2 所提供的值初始化 num1 和 num2。它還包含一個函式 display(),用於列印 num1 和 num2 的值。在 Demo 中還有一個解構函式,在類物件的範圍結束時呼叫該解構函式。其程式碼片段如下所示。
class Demo {
private:
int num1, num2;
public:
Demo(int n1, int n2) {
cout<<"Inside Constructor"<<endl;
num1 = n1;
num2 = n2;
}
void display() {
cout<<"num1 = "<< num1 <<endl;
cout<<"num2 = "<< num2 <<endl;
}
~Demo() {
cout<<"Inside Destructor";
}
};函式 main() 包含類型別 Demo 的物件的定義。然後呼叫函式 display()。如下所示。
Demo obj1(10, 20); obj1.display();
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP