计算不同对象的重量-运算符重载

设boat类和car类都有数据成员weight,要求重载运算符+来计算二者的重量和。

#include"iostream"
using namespace std;
class boat;//在这里一定要先声明一下 
class car;//否则下面引入友元函数时他识别不了 
class boat
{
	public:
		int weight;
		boat(int a)
		{
			this->weight=a;
		}
		void show()
		{cout<<"boat重"<<weight<<endl;}
		friend int operator +(boat &b1,car &c1);
 };
 class car
 {
 		public:
		int weight;
		car(int a)
		{
			this->weight=a;
		}
		void show()
		{cout<<"car重"<<weight<<endl;}
		friend int operator +(boat &b1,car &c1);
 };
 int operator +(boat &b1,car &c1)
 {
 	return b1.weight+c1.weight;
 }
int main()
{
    boat b(4);
	car c(5);
	b.show();
	c.show();
	cout<<"总重"<<b+c<<endl;//这里就不必在重载操作符了  因为b+c已经被定义为int型了 
	return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值