50
complex operator+(complex);
complex operator+(double);
complex& operator+=(complex);
complex& operator+=(double x);
};
inline complex operator+(complex b) //complex+complex
{ complex c; c.re=re+b.re; c.im=im+b.im; return c;}
inline complex operator+( double x) //complex+double
{ return complex(re+x, im);}
inline complex& complex::operator+=(complex b) //complex+=complex
{ complex c; re += b.re; im += b.im; c.re=re; c.im=im; return c; }
inline complex& complex::operator+=(double x) //complex+=double
{re += x; return *this; }
Shuni ta’kidlab o’tish kerakki double+complex tipidagi qo’shishni bu usulda
qo’shimcha yuklash mumkin emas.
Sinfdan tashqari yuklanadigan operatsiyalar ikkita operandga ega bo’lishi kerak.
Ulardan biri sinf tipiga ega bo’lishi lozim.
Qiymat qaytarish uchun vaqtinchalik o’zgaruvchidan foydalaniladi. Bu
maqsadda konstruktordan:
Do'stlaringiz bilan baham: