用整数保存枚举是否是安全的?enum class是否是更好的选择?
这是是用整数保存枚举的方法:
class People这样安全么?是否会把人弄糊涂?
{
public:
enum
{
MALE,
FEMALE
};
People( int sex_for_init );
private:
int sex;
};
People::People( int sex_for_init )
:sex( sex_for_init )
{}
int main()
{
People p1( People::MALE );
}
class People这样更安全?但是People::Sex_set::MALE是标准的C++语法么?
{
public:
enum class Sex
{
MALE,
FEMALE
};
People( Sex sex_for_init );
private:
Sex sex;
};
People::People( Sex sex_for_init )
:sex( sex_for_init )
{}
int main()
{
People p1( People::Sex_set::MALE );
}