友元运算符@obj被C++编译器解释为()。
A: operator@(obj)
B: operator@(obj,0)
C: obj.operator@()
D: obj.operator@(0)
A: operator@(obj)
B: operator@(obj,0)
C: obj.operator@()
D: obj.operator@(0)
举一反三
- 假定类TEST中重载运算符<<,则运算符<<在类TEST中正确的声明形式为( ) A: ostream& operator<<(ostream& output, const TEST& obj); B: friend ostream& operator<<(ostream& output, const TEST& obj); C: ostream& operator<<(const TEST& obj); D: friend ostream& operator<<(const TEST& obj);
- 友元运算符@obj被C++编译器解释为
- 运算符重载测验: 为类ABC定义重载运算符“+”,下列哪种定义形式是正确的?() A: 定义为类ABC的函数成员: void operator +( ){......} B: 定义为类ABC的函数成员: ABC operator +( ABC obj ){......} C: 定义为类ABC的函数成员: ABC operator +( ABC obj1, ABC obj2 ){......} D: 定义为类ABC的友元函数: ABC operator +( ABC obj ){......}
- 调用对象obj函数成员fun:obj.fun( ); 编译器在编译时会将其调整为( )。 A: obj->fun( ); B: obj->fun( &obj ); C: fun( obj ); D: fun( &obj );
- 友元运算符。obj1>obj2被C++编译器解释为( )。 A: operator>(obj1,obj2) B: >(obj1,obj2) C: obj2.operator>(obj1) D: obj1.operator>(obj2)