欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++構(gòu)建函數(shù)使用介紹

 更新時間:2022年08月30日 08:53:43   作者:ljh5930  
構(gòu)造函數(shù)主要作用在于創(chuàng)建對象時為對象的成員屬性賦值,構(gòu)造函數(shù)由編譯器自動調(diào)用,無須手動調(diào)用;析構(gòu)函數(shù)主要作用在于對象銷毀前系統(tǒng)自動調(diào)用,執(zhí)行一 些清理工作

構(gòu)造函數(shù)概念:

構(gòu)造函數(shù)是一個特殊的成員函數(shù),名字與類名相同,創(chuàng)建類類型對象時由編譯器自動調(diào)用,保證每個數(shù)據(jù)成員都有一個合適的初始值,并且在對象的生命周期內(nèi)只調(diào)用一次(創(chuàng)建對象)

作用:

創(chuàng)建一個對象(面向?qū)ο?,第一步肯定得?chuàng)建對象)并且數(shù)據(jù)成員都有初始數(shù)值(數(shù)值有初始化和賦值)

初始化和賦值區(qū)別

  • 初始化(數(shù)值在構(gòu)建函數(shù)中給予)
  • 賦值(數(shù)值在構(gòu)建函數(shù)完成之后給予)

初始化(數(shù)值在構(gòu)建函數(shù)中給予)

#ifndef __COMPLEX__
#define __COMPLEX__
class complex
{
public:
	complex(double r = 0, double i = 0)
	: re(r), im(i) {}  //初始化
private:
	double re, im;
};
#endif // !__COMPLEX__
#include"complex.h"
int main()
{
	complex c1(1, 1);
	return 0;
}

1.調(diào)用構(gòu)造函數(shù)

2.創(chuàng)建對象名字為c1

3.對象中數(shù)據(jù)成員與函數(shù)參數(shù)對應,進行數(shù)值給予,生成對象的數(shù)據(jù)成員順序是類中private的順序

4.對象c1創(chuàng)建成功

賦值(數(shù)值在構(gòu)建函數(shù)完成之后給予)

#ifndef __COMPLEX__
#define __COMPLEX__
class complex
{
public:
	complex(double r = 0, double i = 0)  //名字與類名相同
	{
	re = r;
	im = i;
	}
private:
	double re, im;
};
#endif // !__COMPLEX__
#include"complex.h"
int main()
{
	complex c1(1, 1);
	return 0;
}

1.調(diào)用構(gòu)造函數(shù)

2.創(chuàng)建對象名字為c1

3.構(gòu)建函數(shù)中沒有初始化,編譯器自動加上初始化操作,對數(shù)據(jù)成員進行隨機數(shù)初始化

4.對象c1創(chuàng)建成功

5.函數(shù)中輸入的兩個參數(shù),函數(shù)執(zhí)行命令行,對數(shù)據(jù)進行賦值

如何得知兩則區(qū)別

tihs指針

this指針中存儲的是自己對象的地址

在兩者構(gòu)造函數(shù)中使用this指針,初始化操作因為類對象完成初始化前,類對象還未形成,所以會對this報錯

初始化中使用this

class complex
{
public:
	complex(double r = 0, double i = 0)
	: this->re(r),this-> im(i) {}
private:
	double re, im;
};

error: expected '{' before 'this'

賦值中使用this

class complex
{
public:
	complex(double r = 0, double i = 0)
	{
		this->im = r;
		this->re = i;
	}
private:
	double re, im;
};

到此這篇關于C++構(gòu)建函數(shù)使用介紹的文章就介紹到這了,更多相關C++構(gòu)建函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • C++實現(xiàn)學生信息管理系統(tǒng)(Map實現(xiàn))

    C++實現(xiàn)學生信息管理系統(tǒng)(Map實現(xiàn))

    這篇文章主要為大家詳細介紹了C++實現(xiàn)學生信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • C 語言基礎教程(我的C之旅開始了)[二]

    C 語言基礎教程(我的C之旅開始了)[二]

    C 語言基礎教程(我的C之旅開始了)[二]...
    2007-02-02
  • C語言常見排序算法歸并排序

    C語言常見排序算法歸并排序

    這篇文章主要介紹了C語言常見排序算法歸并排序,歸并排序是建立在歸并操作上的一種有效的排序算法,該算法是采用分治法的一個非常典型的應用
    2022-07-07
  • 使用C++17實現(xiàn)JSON庫設計思路示例全解

    使用C++17實現(xiàn)JSON庫設計思路示例全解

    這篇文章主要為大家介紹了使用C++17實現(xiàn)JSON庫設計思路示例全解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • C++實現(xiàn)LeetCode(159.最多有兩個不同字符的最長子串)

    C++實現(xiàn)LeetCode(159.最多有兩個不同字符的最長子串)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(159.最多有兩個不同字符的最長子串),本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C語言深入淺出講解直接插入排序算法的實現(xiàn)

    C語言深入淺出講解直接插入排序算法的實現(xiàn)

    插入排序也是最簡單的一類排序方法,我今天介紹的也是插入排序里最直觀且淺顯易懂的直接插入排序。對這個很簡單的排序,記得當時也是花了近兩個晚上才搞懂它的原理的,接下來就來介紹一下
    2022-05-05
  • QT TCP實現(xiàn)簡單的通信示例

    QT TCP實現(xiàn)簡單的通信示例

    這篇文章主要為大家詳細介紹了QT TCP簡單的通信示例,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C++全面細致講解復數(shù)類

    C++全面細致講解復數(shù)類

    本文章向大家介紹C++ 標準庫中的復數(shù)類,主要包括C++ 標準庫中的復數(shù)類使用實例、應用技巧、基本知識點總結(jié)和需要注意事項,具有一定的參考價值,需要的朋友可以參考一下
    2022-06-06
  • C++初始化函數(shù)列表詳細解析

    C++初始化函數(shù)列表詳細解析

    C++可以定義引用類型的成員變量,引用類型的成員變量必須在構(gòu)造函數(shù)的初始化列表中進行初始化
    2013-09-09
  • C語言實現(xiàn)貪吃蛇游戲設計

    C語言實現(xiàn)貪吃蛇游戲設計

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)貪吃蛇游戲設計,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07

最新評論