private:
intx,y;
};
voidmain()
{vectorv1(1,2),v2(3,4),v3;
cout<<"v1=";
v1.display();
cout<<"v2=";
v2.display();
v3=v1+v2;
cout<<"v3=v1+v2=";
v3.display();
}
答案:
v1=(1,2)
v2=(3,4)
v3=v1+v2=(4,6)
6.3编程题
1.分别使用成员函数和友员函数编程序重载运算符“+”,使该运算符能实现两个字符串的连接。
解答:
略。
2.设向量X=(x1,x2,x3)和Y=(y1,y2,y3),则它们之间的加、减和积分别定义为:
X+Y=(x1+y1,x2+y2,x3+y3)
X-Y=(x1-y1,x2-y2,x3-y3)
X*Y=x1*y1+x2*y2+x3*y3
编程序对运算符“+”、“-”和“*”重载,实现向量之间的加、减、乘运算。
解答:
略。
3.定义一个类nauticalmile_kilometer,它包含两个数据成员kilometer(千米)和meter(米)。
还包含一个构造函数对数据成员初始化;成员函数print用于输出数据成员kilometer和meter的值;类型转换函数double()实现把千米和米转换为海里(1海里=1.852千米)。
编写main函数,测试类nauticalmile_kilometer。
解答:
#include
constdoublen=1.852;//定义海里与千米和米的转换系数(1海里=1.852千米)
classnauticalmile_kilometer
{public:
nauticalmile_kilometer(intkm,doublem)
{kilometer=km;meter=m;}
voidprint()
{cout<<"kilometer="<operatordouble();
private:
intkilometer;
doublemeter;
};
nauticalmile_kilometer:
:
ope