在同一个类中,可以定义重载的成员函数 int f(int anInt=100); 和void f(int anInt);
举一反三
- 类A中有唯一的一个成员函数f,且f是公有的静态或非静态成员函数,对于类A的一个对象a,执行语句 a.f(100);成功,那么f 的函数原型不可以是( )。 A: A& f( int, int=50 ); B: void f(int & ) ; C: const A *f(const int ); D: A f( const int &);
- 若有一函数定义为"int f(int x,int *y){return x/*y;}",声明该函数的正确形式 是() . A: void f(int,int); B: int *f(int,int *); C: int f(int *,int *); D: int f(int,int *);
- 34. 下面是类MyClass的定义,对定义中各语句描述正确的是____。class MyClass{ public: void MyClass(int a){ X=a;} //① int f(int a,int b) //② { X=a; Y=b; } int f(int a,int b,int c=0) //③ { X=a; Y=b; } int f(int a,int b,int c=0) { X=a; Y=b; Z=c; } static void g(){ X=10;} //④ private: int X,Y,Z; }; A: 语句①是类MyClass的构造函数定义 B: 语句②和语句③实现类成员函数的重载 C: 语句④实现对类成员变量X的更新操作 D: 语句①、②、③和④都不正确
- 已知函数调用f(3,4,5)是正确的函数调用,则下列选项中函数f可能的声明形式包括( )。 A: void f(int a, int b, int c); B: void f(int a, int b, int c=10); C: void f(int a=20, int b, int c=10); D: void f(int a, int b, int c=10, int d=20);
- 以下( )函数的定义是错误的? A: void f(int i) { return i+1; } B: void f( ) { } C: void f(int i) { } D: int f( ) { return 0; }