单选题已知Value是一个类,value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是(  )。AValue operator+(Value v,int i);BValue operator+(Value v=value,int i);CValue operator+(Value v ,int i=0);DValue operator+(Value v=value,int i=0);

单选题
已知Value是一个类,value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是(  )。
A

Value operator+(Value v,int i);

B

Value operator+(Value v=value,int i);

C

Value operator+(Value v ,int i=0);

D

Value operator+(Value v=value,int i=0);


参考解析

解析:
“+”是二元运算符,以非成员函数的形式重载,则其第一操作数是对象本身,i为第二操作数。

相关考题:

下面是重载双目运算符+的普通函数原形,其中最符合+原来含义的是()。 A、Valueoperator+(Value,Value);B、Valueoperator+(Value,int);C、ValueD、Value

有如下类定义:class Foo{public:Foo(int v):value(v){} // ①~Foo(){} // ②private:Foo(){} // ③int value = 0; // ④};其中存在语法错误的行是A . ①B . ②C . ③D . ④

有如下程序 include using namespace std; int i=1; class Fun { 有如下程序 #include <iostream> using namespace std; int i=1; class Fun { public: static int i; int value( ){ return i-l;} int value( )const { return i+1;} }; int Fun::i=2; int main( ){ int i=3; Fun funl; const Fun fun2; ___________ return 0; } 若程序的输出结果是: 123 则程序中下划线处遗漏的语句是A.cout<<funl.value( )<<Fun::i<<fun2.value( );B.cout<<Fun::i<<funl.value()<<fun2.value( );C.cout<<funl.value( )<<fun2.value( )<<Fun::i;D.cout<<fun2.value( )<<Fun::i<<fun1.value( );

( 10 )已知下列程序的输出结果是 42 ,请将画线处缺失的部分补充完整。#includeusing namespace std;class Foo {int value;public:Foo( ) : value(0) {}void setValue(int value){ 【 10 】 = value; // 给 Foo 的数据成员 value 赋值 }void print( ) { cout value; }};int main( ){Foo f;f.setValue(42);f.print();return 0;}

类MyClass的定如下,若要对value赋值,则下面语句正确的是( )。 class MyClass { public: MyClass(){} MyClass(int i){value=new int(i);} int*value; };A.MyClass my;my.value=10;B.MyClass my;*my.value=10;C.MyClass my;my.*value=10;D.MyClass my(10);

下列运算符函数中,肯定不属于类Value的成员函数的是( )。A.Value operator+(Value);B.Value operator-(Value,Value);C.Value operator*(int);D.Value operator/(Value);

如下程序的输出结果是( )。 public class Test { void printValue(int m) { do { System.out.println("The value is"+m); } while( --m>10) } public static void main(String args[]) { int i=10; Test t=new Test(); t.printValue(i); } }A.The value is 8B.The value is 9C.The value is 10D.The value is 11

有如下程序 include using namespace std;int i=1;class Fun {public:static int i;i 有如下程序 #include <iostream>using namespace std;int i=1;class Fun {public:static int i;int value(){ return i-1;}int value()const{ return i+1;}};int Fun:: i=2;int main() {int i=3;Fun fun1;const Fun fun2;______________________return ();}若程序的输出结果是:123A.cout<<fun1.value()<<Fun:: i<<fun2.value();B.cout<<Fun::i<<fun1.value()<<fun2.value();C.cout<<fun1. value()<<fun2.value()<<Fun:: i;D.cout<<fun2.value()<<Fun:: i<<fun 1.value();

从切片中删除一个元素,下面的算法实现正确的是() A.func (s *Slice)Remove(value interface{}) error {for i, v := range *s { if isEqual(value, v) { if i== len(*s) - 1 { *s = (*s)[:i] }else { *s = append((*s)[:i],(*s)[i + 2:]...) } return nil }}return ERR_ELEM_NT_EXIST}B.func (s *Slice)Remove(value interface{}) error {for i, v := range *s { if isEqual(value, v) { *s = append((*s)[:i],(*s)[i + 1:]) return nil }}return ERR_ELEM_NT_EXIST}C.func (s *Slice)Remove(value interface{}) error {for i, v := range *s { if isEqual(value, v) { delete(*s, v) return nil }}return ERR_ELEM_NT_EXIST}D.func (s *Slice)Remove(value interface{}) error {for i, v := range *s { if isEqual(value, v) { *s = append((*s)[:i],(*s)[i + 1:]...) return nil }}return ERR_ELEM_NT_EXIST}

有如下程序:includeusing namespace std;int i=1;class Fun{public:static int i;int 有如下程序: #include<iostream> using namespace std; int i=1; class Fun { public: static int i; int value(){return i-1;} int value()const{return i+1;} }; int Fun::i=2; int main() { int i=3; Fun fun 1; const Fun fun2; ______ return 0; } 若程序的输出结果是: 123 则程序中横线处的语句是( )。A.cout<<fun1.value()<<Fun::i<<fun2.value();B.cout<<Fun::i<<fun1.value()<<fun2.value();C.count<<fun.value()<<fun2.value()<<Fun::i;D.cout<<fun2.value()<<Fun::i<<fun1.value();

类MyClass的定义如下,若要对value赋值,则下面语句正确的是( )。 classMyClass { public: MyClass( ){} MyClass(inti){value=newint(i);} int*value; };A.MyClassmy;my.value=10;B.MyClassmy;*my.value=10;C.MyClassmy;my.*value=10;D.MyClassmy(10);

已知Value是一个类,Value是Value的一个对象。 下列以非成员函数形式重载的运算符函数原形中,正确的是( )。A.Valueoperator+(Valuev,inti);B.Valueoperator+(Valuev=value,inti);C.Valueoperator+(Valuevinti=O);D.Valueoperator+(Valuev=value,inti=O);

有如下类定义: class Foo { public: Foo(int v) : value(v) { } // ① ~Foo() { } // ② private: Foo() { } // ③ int value = 0; // ④ }; 其中存在语法错误的行是( )。A.①B.②C.⑧D.④

已知Value是一个类,value是Value的一个对象。下列以非成员函数形式重载的运算符函数原型中,正确的是A.Value operator+(Value v, int i);B.Value operator+(Value v=value, int i);C.Value operator+(Value v, int i=0);D.Value operator+(Value v=value, int i=0);

有如下类声明: class Base{ protected: int amount; public: Base(int n=0):amount(n){} int getAmountconst{retum amount;} }; class Derived:public Base{ protected: int value; public: Derived(int m,int n):value(m),Base(n){} int getDataconst{return value+amount;} }: 已知x是一个Derived对象,则下列表达式中正确的是( )。A.x.value+X.getAmountB.x.getData一x.getAmountC.x.getData一x.amountD.x.value+X.amount

有如下程序: #includeiostream using namespace std; int i=1; class Fun{ public: static int i; int value{return i—l;} int valueconst{return i+1;} }; int Fun::i=2; int main{ int i=3; Fun funl; const Fun fun2: __________________ return 0; } 若程序的输出结果是: 123 则程序中下画线处遗漏的语句是( )。A.coutfunl.valueFun::ifun2.value;B.toutFun::ifunl.valuefun2.value;C.coutfunl.valuefuIl2.valueFun::i:D.eoutfun2.valueFun::ifunl.value;

已知Value是一个类,Value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是( )。A.Value operator+(Value v,int i);B.Value operator+(Value v=value,int i);C.Value operator+(Value vint i=0);D.Value operator+(Value v=value,int i=0);

类MyClass的定义如下: class MyClass { public: MyClass(){} MyClass(int i) { value=new int(i); } int *value; }; 若要对类中的value赋值,则下面的语句中,正确的是( )。A.MyClass my;my.value=10;B.MyClass my;*my,value=10;C.MyClass my;my.*value=10;D.MyClass my(10);

类MyClas的定义如下: class MyClas{ public: MyClas(){} MyClas(int a){ value=new.int(i); } int *value; }; 若要对类中的value赋值,则下面的语句中正确的是( )A.MyClas x;x.value=10;B.MyClas x; *x.value=10;C.MyClas x;x. *value=10;D.MyClas x(10);

下列程序的输出结果是( )。 public class Test { void printValue(int m) { do{ System.out.println("The value is"+m) } while(--m10) } public static void main(String args[]) { int i=10; Test t=new Test: t.printValue(i); } }A. The value is 8B.The value is 9C.The value is 10D.The value is 11

下面是重载双目运算符-的成员函数原形,其中最符合-原来含义的是( )。 A.ValueValue::operator-(Value)B.ValueValue::operator-(int)C.Value&Value::operator-(Value)D.Value&Value::operator-(Value&)

类aClass的定义如下:classaClass{public:aClass(){}aClass(inti){value=newint(i);}int*value;}若要对类中的value赋值,则下面的语句中,正确的是()。A、aClassmy;my.value=10;B、aClassmy;*my.value=10;C、aClassmy;my.*value=10;D、aClassmy(10);

Given the following interface definition, which definitions are valid?()   interface I {   void setValue(int val);   int getValue();   }    DEFINITION a:   (a) class a extends I {  int value;   void setValue(int val) { value = val;  }   int getValue() {  return value;  }   }   DEFINITION b:   (b) interface b extends I {   void increment();   }   DEFINITION c:   (c) abstract class c implements I {   int getValue() {  return 0;  }  abstract void increment();   }   DEFINITION d:   (d) interface d implements I {  void increment();  }   DEFINITION e:   (e) class e implements I {  int value;   public void setValue(int val) { value = val; }  }  A、Definition a.B、Definition b.C、Definition c.D、Definition d.E、Definition e.

Given the following code:    public class Test {  void printValue(int m){  do {  System.out.println("The value is"+m);     }  while( --m  10 )     }  public static void main(String arg[]) {     int i=10;  Test t= new Test();     t.printValue(i);     }     }  Which will be output?()    A、 The value is 8B、 The value is 9C、 The value is 10D、 The value is 11

多选题Given the following interface definition, which definitions are valid?()   interface I {   void setValue(int val);   int getValue();   }    DEFINITION a:   (a) class a extends I {  int value;   void setValue(int val) { value = val;  }   int getValue() {  return value;  }   }   DEFINITION b:   (b) interface b extends I {   void increment();   }   DEFINITION c:   (c) abstract class c implements I {   int getValue() {  return 0;  }  abstract void increment();   }   DEFINITION d:   (d) interface d implements I {  void increment();  }   DEFINITION e:   (e) class e implements I {  int value;   public void setValue(int val) { value = val; }  }ADefinition a.BDefinition b.CDefinition c.DDefinition d.EDefinition e.

单选题类aClass的定义如下:classaClass{public:aClass(){}aClass(inti){value=newint(i);}int*value;}若要对类中的value赋值,则下面的语句中,正确的是()。AaClassmy;my.value=10;BaClassmy;*my.value=10;CaClassmy;my.*value=10;DaClassmy(10);

单选题下列运算符函数中,肯定不属于类Value的成员函数的是(  )。AValue operator+(Value);BValue operator-(Value,Value);CValue operator*(int);DValue operator/(Value);