別々の型で同じ列挙型の値を再利用する方法はありますか?私は次のようなものにできるようにしたいと思います:上記の2行目にerror C2365: 'UNKNOWN' : redefinition; previous definition was 'enumerator'
を:列挙型の値を別々の列挙型で再利用
enum DeviceState { UNKNOWN, ACTIVE, DISABLED, NOTPRESENT, UNPLUGGED };
enum DeviceType { UNKNOWN, PLAYBACK, RECORDING };
int _tmain(int argc, _TCHAR* argv[])
{
DeviceState deviceState = DeviceState::UNKNOWN;
DeviceType deviceType = DeviceType::UNKNOWN;
return 0;
}
これは私にではなく、C++に理にかなって、それは文句を言いcompiler-。これを行う正しい方法がありますか、またはいつも一意の列挙値を使用するはずですか?私は他人のコードを含めているかどうかを保証することが常に可能であるとは想像できません。
ありがとうございました。私のために私の例を修正することができますか?上記のように名前空間を使って変数を宣言する方法がわかりません。 –
@IAmAI投稿したコードがうまくいきませんか? –
変数を 'DeviceState deviceState = DeviceState :: UNKNOWN;'と宣言すると、コンパイラエラーが発生します。 '' DeviceState ':式の名前空間識別子の不正使用 ' –