我需要传达一个同一个枚举传递给多个调用的信息。所以我这样做:
MiddleEarth::Creatures ally = MiddleEarth::Creatures::Elf;
myEnergy->Transfer(ally, 10);
myLives->Transfer(ally, 1);
两种Transfer方法都声明如下:
Energy::Transfer(const Creatures& transferTo, (snip)
但是,关于名为ally的变量的声明,我得到以下警告:
warning C4482: nonstandard extension used: enum 'MiddleEarth::Creatures' used in qualified name
我究竟做错了什么?如何重写我的代码,使其不生成编译器警告?
最佳答案
从MSDN page on the warning;
所以就你而言
MiddleEarth::Creatures::Elf
应该
MiddleEarth::Elf