其中(const Vector &v)和v=v1.Add(v2);s=v1.Sub(v2);m=v1.Mult(v2);是什么含义
#include
using namespace std;
class Vector//矢量类的定义
{
public://外部接口,公有成员函数
Vector(int X=0,int Y=0){x=X;y=Y;}
Vector Add(const Vector &v)//矢量的加法
{
Vector temp;
temp.x=x+v.x;
temp.y=y+v.y;
return temp;
}
Vector Sub(const Vector &v)//矢量的减法
{
Vector temp;
temp.x=x-v.x;
temp.y=y-v.y;
return temp;
}
Vector Mult(const Vector &v)//矢量的乘法
{
Vector temp;
temp.z=x*v.x+y*v.y;
return temp;
}
void print()
{
cout<<"("<","<")"<void display()
{
cout<private://私有数据成员
int x,y,z;
};
int main()
{
Vector v1(2,3),v2(1,2);
Vector v,s,m;
v=v1.Add(v2);s=v1.Sub(v2);m=v1.Mult(v2);
cout<<"v1=";v1.print();cout<<"v2=";v2.print();
cout<<"v1+v2=";
v.print();
cout<<"v1-v2=";
s.print();
cout<<"v1*v2=";
m.display();
return 0;
}
const Vector &v 这是参数类型,为Vector类的引用,const用来修饰变量,确保函数内不能改变传入变量的值
用引用传递的好处是效率高,不需要完全复制对象传递;但由于引用可以实现外部传入变量的修改,因此用const来限制这个权限
v=v1.Add(v2);s=v1.Sub(v2);m=v1.Mult(v2); 是加法,减法和乘法的函数调用v,s,m分别接收函数返回值