单选题 下面是类MyClass的定义,对定义中各语句描述正确的是______。
class MyClass
{
int x, y, z;
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; z=c;
}
static void g(){x=10;} //④
};
【正确答案】 D
【答案解析】[解析] 语句①应该是类MyClass的构造函数的定义,但是构造函数不能有返回值void;语句②和语句③的目的是重载函数f(),但是都缺少返回值;对于语句④,静态成员函数的实现中不能直接引用类中说明的非静态成员x。所以,四个语句均不正确。