#include <iostream>
class Complex
{
public:
Complex(int a = 0, int b = 0) : a_(a), b_(b)
{
}
private:
int a_;
int b_;
friend Complex operator+(const Complex& lhs, const Complex& rhs);
friend std::ostream& operator<<(std::ostream& os, const Complex& cpl);
};
Complex operator+(const Complex& lhs, const Complex& rhs)
{
return Complex(lhs.a_ + rhs.a_, lhs.b_ + rhs.b_);
}
std::ostream& operator<<(std::ostream& os, const Complex& cpl)
{
return os << '(' << cpl.a_ << '+' << cpl.b_ << "i)";
}
using namespace std;
int main()
{
Complex c1(10, 20);
Complex c2(1, 2);
cout << c1 << '\n'
<< c2 << '\n';
Complex c4 = c2 + c1 + c1;
cout << c4 << endl;
return 0;
}
<<的重载
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 2019.6.4 14:40 三刷结束留念 ——小楠楠 2019.4.11 17:28二刷结束留念 慢慢...
- 几个常用管理配置文件的区别supervisorctl help reload[root@mobileapp ~]#...