class complex
{
public:
complex (double r = 0, double i = 0)
: re (r), im (i) // 初始化進階用法
{ }
complex& operator += (const complex&);
double real () const { return re; }
double imag () const { return im; }
private:
double re, im;
friend complex& __doapl (complex*, const complex&);
};
pass by value(傳值):
complex (double r = 0, double i = 0)
: re (r), im (i) // 初始化進階用法
{ }
pass by reference(傳引用):
complex& operator += (const complex&);
為什麼推薦傳引用呢?
- double 8位元組
- 指針 4位元組
注意:
當然傳char的時候(1位元組),可以靈活應用!!!
上面舉例:
{
complex c1(2,1);
complex c2;
c2 += c1;
cout<<c2;
}
除了上面以外還得注意還得注意什麼?
看一下上面例子:
complex& operator += (const complex&);
const 哪裡是一個值得注意的點!!!
讓其成為常量,函數裡面不可以改變其的值!!!