有没有办法如何创建只能有3个值之一的变量?
我想创建一个返回三种可能状态之一的函数,我认为在这种情况下使用整数会不必要地占用内存中的大量空间.
那么,有没有什么方法可以创建在内存中只存储3位的变量,并且可以用作函数的返回值?如果是这样,请给我建议如何将其重写为更好的东西:
int ReturnOneOfThreeStates(){
return 0 //Let's say 0=green, 1=red, 2=blue
}
Run Code Online (Sandbox Code Playgroud)
jua*_*nza 13
有没有办法如何创建只能有3个值之一的变量?
你可以使用枚举:
enum TriState { One, Two, Three };
Run Code Online (Sandbox Code Playgroud)
在C++ 11中,您可以指定用于表示枚举的基础整数类型:
enum TriState : char { One, Two, Three};
Run Code Online (Sandbox Code Playgroud)
进一步的C++ 11精确是你可以强力输入:
enum class TriState : char { One, Two, Three};
Run Code Online (Sandbox Code Playgroud)