頭文件.h
//不帶指針的類
/**防衛式聲明**************/
#ifndef _COMPLEX_H_
#define _COMPLEX_H_
/**前置聲明**************/
/**class template 模板 **************/
template<typename T>
class complex
{
/**函數部分*****************/
pubilc:
/**構造函數,r和i爲默認實參,默認參數帶初始值********/
complex (T r = 0, T i = 0) //構造函數帶參數,賦初值
: re(r), im(i)//初值列,給成員數據賦初值,構造函數特有的語法,利用初始化效率高
{
/*變量數值設定:初始化,賦值,兩個一樣的效果,但是前者效率高**/
/*re = r;****/
/*im = i;****/
}
//complex () : re(0), im(I) {} //與前一個構造函數衝突,都有相同的類型和數量的賦初值
complex& operator += (const complex&);
T real() const {return re;}
T imag() const {return im;}
/***********************/
/**數據部分*****************/
private:
T re,im;
/***********************/
friend complex& __doapl (complex * ,const complex&);
}
#endif
*訪問級別:
定義文件cpp、hpp