gpt4 book ai didi

c++ - 控制 ENUM 内容的 boolean 值 - C++

转载 作者:行者123 更新时间:2023-11-28 03:21:20 35 4
gpt4 key购买 nike

我有一个方法参数的枚举。这个 ENUM 是一个类的私有(private)成员,比如

class Method

对于这种方法,我有两种变体。参数列表几乎相同。对于该方法的第二个变体,要将 3 个参数附加到第一个变体的参数列表中。

我想用一个 boolean 值来做,第二个变体设置为 true。是否有可能有这样的东西:

enum EcolId {
P1,
P2,
P3,

if(m_bool)
{
P4,
P5
}
}

如果没有,我该怎么办?

我别无选择,只能在这里使用 ENUM。

谢谢

最佳答案

不,你不能那样做。

你可以这样做:

 enum EcolId {
P1,
P2,
P3,

#ifdef SOMETHING
P4,
P5
#endif
}

或者,您可以使用模板。像这样:

enum EcolId1
{
P1,
P2,
P3,
};

enum EcolId2
{
P1,
P2,
P3,
P4,
P5,
};


template<typename T>
class Method
{
T enumvar;
...
}

...
Method<EcolId1> limited;
Method<EcolId2> more;

关于c++ - 控制 ENUM 内容的 boolean 值 - C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15337532/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com