日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > C語言與CPP編程
[導(dǎo)讀]以良好的方式編寫Cclass假設(shè)現(xiàn)在我們要實(shí)現(xiàn)一個復(fù)數(shù)類complex,在類的實(shí)現(xiàn)過程中探索良好的編程習(xí)慣。①Header(頭文件)中的防衛(wèi)式聲明complex.h:#ifndef__COMPLEX__#define__COMPLEX__classcomplex{}#endif防...

以良好的方式編寫C class

假設(shè)現(xiàn)在我們要實(shí)現(xiàn)一個復(fù)數(shù)類complex,在類的實(shí)現(xiàn)過程中探索良好的編程習(xí)慣。

① Header(頭文件)中的防衛(wèi)式聲明

complex.h:

# ifndef __COMPLEX__
# define __COMPLEX__
class complex
{

}
# endif
防止頭文件的內(nèi)容被多次包含。

② 把數(shù)據(jù)放在private聲明下,提供接口訪問數(shù)據(jù)

# ifndef __COMPLEX__
# define __COMPLEX__
class complex
{
public:
double real() const {return re;}
double imag() const {return im;}
private:
doubel re,im;
}
# endif
③ 不會改變類屬性(數(shù)據(jù)成員)的成員函數(shù),全部加上const聲明

例如上面的成員函數(shù):

double real () `const` {return re;}
double imag() `const` {return im;}
既然函數(shù)不會改變對象,那么就如實(shí)說明,編譯器能幫你確保函數(shù)的const屬性,閱讀代碼的人也明確你的意圖。

而且,const對象才可以調(diào)用這些函數(shù)——const對象不能夠調(diào)用非const成員函數(shù)。

④ 使用構(gòu)造函數(shù)初始值列表

class complex
{
public:
complex(double r = 0, double i =0)
: re(r), im(i) { }
private:
doubel re,im;
}
在初始值列表中,才是初始化。在構(gòu)造函數(shù)體內(nèi)的,叫做賦值。

⑤如果可以,參數(shù)盡量使用reference to const

為complex 類添加一個 =操作符:

class complex
{
public:
complex
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉