繁体   English   中英

在 class 中使用后的 C++ 枚举声明

[英]C++ enum declaration after use in class

我尝试创建一个带有枚举的 class 和一个返回此枚举变量的 function。 但是我遇到了一个问题:

这有效:

class SizeBoxClass {

public:
    enum BoxType{xBox, yBox};

    BoxType intersects() {
        return xBox;
    }

}SizeBox;

但这不会:

class SizeBoxClass {

public:
    BoxType intersects() {
        return xBox;
    }

    enum BoxType { xBox, yBox };

}SizeBox;

我在 function 声明的行中得到“BoxType 未定义”... 为什么? 我认为在使用后声明 class 成员不是问题。

enum BoxType { xBox, yBox }; 类型声明(也是定义),而不是成员变量或成员 function。

类型需要在第一次使用前声明。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM