日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++类构造函数与析构函数

發布時間:2025/3/15 c/c++ 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++类构造函数与析构函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

C++類的構造函數和析構函數

一、構造函數

構造函數在類的對象被創建時,自己調用,不可以顯式調用。通常用構造函數來做一些初始化的工作。
構造函數又分為兩類:

1. 無參數的構造函數2. 帶參數的構造函數

無參數的構造函數的實例:

#include <iostream> using namespace std;class Line {public:void setL(int l);int getL();Line();private:int length; };Line::Line(void) {cout << "創建了一個對象\n" << endl; }void Line::setL(int l) {length = l; } int Line::getL() {return length; }int main() {Line line;line.setL(10);printf("The line's length is:%d",line.getL());return 0; }

其運行結果為:

創建了一個對象The line's length is:10

不帶參數的構造函數相對來說還是比較簡單的。下面來看一下帶有參數的構造函數:

#include <iostream> using namespace std;class Line {public:void setL(int l);int getL();Line(int l);private:int length; };Line::Line(int l) {length = l;cout << "創建了一個對象,并賦初值\n" << endl; }void Line::setL(int l) {length = l; } int Line::getL() {return length; }int main() {Line line(3);printf("The line's length is:%d\n",line.getL());line.setL(10);printf("The line's length is:%d",line.getL());return 0; }

運行結果如下:

創建了一個對象,并賦初值The line's length is:3 The line's length is:10

同時也可用初始化列表的形式來初始化字段,只需要更改Line::Line(int l)這個函數的樣子即可:

Line::Line(int l):length(l) {cout << "創建了一個對象,并賦初值\n" << endl; }

二、析構函數

析構函數用于對象被銷毀時,釋放內存空間,處理緩存垃圾等。同時析構函數與構造函數同樣,不可以被顯式調用。

#include <iostream> using namespace std;class Line {public:void setL(int l);int getL();Line(int l);~Line(void);private:int length; };Line::Line(int l):length(l) {cout << "創建了一個對象,并賦初值\n" << endl; }Line::~Line(void) {cout << "對象已經被銷毀\n" << endl; }void Line::setL(int l) {length = l; } int Line::getL() {return length; }int main() {Line line(3);printf("The line's length is:%d\n",line.getL());line.setL(10);printf("The line's length is:%d\n",line.getL());return 0; }

運行的結果為:

創建了一個對象,并賦初值The line's length is:3 The line's length is:10 對象已經被銷毀

總結

以上是生活随笔為你收集整理的C++类构造函数与析构函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。