该类声明是什么意思?

Zain Syed |

在头文件中遇到了一个我不确定如何解释的代码片段:

...
private:
    class Ellipsoid * ellipse;

稍后在cpp中对其进行了初始化:

ellipse = (Ellipsoid *) something->GetEllipse();

该数据成员上的class关键字让我大吃一惊。这是指向从Ellipsoid继承的类/类型的指针吗?因此,是否将“椭圆”视为对类型的引用?

德鲁·多曼(Drew Dormann)

class此处使用关键字只是使用该符号的位置声明该符号Ellipsoid为a class

如果编译器已经知道该符号是一个类,则它是可选的。

class Ellipsoid;

class MyClass
{
    private:
        /*class*/ Ellipsoid * ellipse;
};

但是,如果尚未声明该符号,则显示的用法将防止编译器错误。

//class Ellipsoid;

class MyClass
{
    private:
        class Ellipsoid * ellipse;
};

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章