C 类中的枚举声明,在类中访问枚举时出现问题

发布于 2024-10-29 13:54:37 字数 457 浏览 0 评论 0原文

我在班级中声明枚举时遇到问题。 我曾试图在私人、公开、外部宣布这一点,但总的来说,没有任何作用。 我需要从外部调用类中的函数并在函数中使用枚举 这是我的代码。

class Algoritem {
    public:
    enum Optimization { W , A , D };
    enum FenceType { OF , CC };
    enum Eventopa { BR , OR };
    algorithem* OptimalPatrol(double N, int K, double VS, double T, Optimization F,FenceType FT, Eventopa E, double Imax,double P);
};

当我需要调用 OptimalPatrol() 时,我需要输入 3 个枚举。我无法在主函数中重新声明它们,那么如何使用主函数中的变量输入枚举呢?

I have problem with the declaration of enum in my class.
I had tried to declare it on private, public, outside, in the main, nothing works.
I need to call function in the class from outside and use the enums in the function
here is my code.

class Algoritem {
    public:
    enum Optimization { W , A , D };
    enum FenceType { OF , CC };
    enum Eventopa { BR , OR };
    algorithem* OptimalPatrol(double N, int K, double VS, double T, Optimization F,FenceType FT, Eventopa E, double Imax,double P);
};

When I need to call OptimalPatrol() I need to input the 3 enums. I can't redeclare them in the main, so how can I input my enums with variable from the main?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

囚我心虐我身 2024-11-05 13:54:37

您必须指定枚举在哪个类中定义。因此,例如像这样调用函数:

OptimalPatrol(N, K, VS, T, Algoritem::W, Algoritem::OF, Algoritem::BR, Imax, P);

这样,您的编译器就知道在哪个类中查找枚举声明。

You have to specifiy which class the enums are defined in. So, e.g. call the function like this:

OptimalPatrol(N, K, VS, T, Algoritem::W, Algoritem::OF, Algoritem::BR, Imax, P);

That way, your compiler knows in which class to look for the enum declarations.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文