有如下类声明: class Fin{ public: Fin(); //① Fin*pf; //② Fin f; //③ Fin &p; //④ }; 在标有数字

admin2020-06-29  37

问题 有如下类声明:
    class Fin{
    public:
    Fin();    //①
    Fin*pf;    //②   
    Fin f;    //③
    Fin &p;    //④
    };
    在标有数字的四个成员声明中,将产生编译错误的是(    )。

选项 A、①
B、②
C、③
D、④

答案C

解析 只有当类定义体完成之后才能定义类,题目中四个声明语句位置,Fin类未定义完整,属于不完全类型,此时数据成员只能是指向该类类型的指针或引用,而不能是该类的对象;语句3会产生编译错误;答案为c。
转载请注明原文地址:https://kaotiyun.com/show/l48p777K
0

最新回复(0)