今天,我遇到了一些类似这样的代码。
namespace Foo
{
public enum Game{ High, Low};
public enum Switch{On, Off};
public class Bar()
{
// Blah
}
}
我无法弄清楚这与在类中声明枚举之间有什么区别。 AFAIK,您仍然可以“覆盖”类内的那些枚举。
枚举是类型,就像类一样。当您在类中声明枚举时,它只是一个嵌套类型。嵌套枚举只是hides在外部作用域中声明的具有相同名称的其他枚举,但您仍然可以通过其完全限定名称(在示例中使用命名空间前缀)引用隐藏枚举。
决定是声明顶级枚举还是嵌套枚举取决于您的设计以及这些枚举是否会被类以外的任何对象使用。您还可以将嵌套枚举设为私有或对其封闭类型进行保护。但是,顶级枚举更为常见。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)