下面是“二维向量” vector2D 的定义,其中作为成员函数重载的运算符“+”的功能是将两向量的分量x和y对应相加,然后返回作为相加结果的新对象。那么应该在横线上填入的语句是( )。 class vector2D { private

admin2013-05-30  66

问题 下面是“二维向量” vector2D 的定义,其中作为成员函数重载的运算符“+”的功能是将两向量的分量x和y对应相加,然后返回作为相加结果的新对象。那么应该在横线上填入的语句是(   )。    class vector2D    {    private:       double x;   //x分量       double y;  //y分量    public:       vector2D(double x0=0,double y0=0) :x(x0),y(y0) {}       void show(cout<<’ (’<<’, ’<<y<<’) ’;}       _________________________;    };    vector2D ::  operator +  (vector2D a)    {       return vector20(x+a.x,y+a.y);    }

选项 A、vector2D operator + (vector2D b)
B、vector2D operator + (vector2D &b)
C、void operator + (vector2D)
D、int operator + (vector2D b)

答案1

解析 此题在类vector2D中将运算符“+”重载为成员函数,实现将两向量的分量x和y对应相加的功能。那么由题可知,在空格处填入的应当是运算符“+”重载函数的声明。根据运算符“+”重载函数在类体外的定义可知其声明语句为: vector2Doperator+(vector2DB)
转载请注明原文地址:https://jikaoti.com/ti/4qE0FFFM
0

最新回复(0)