所以System.Type
有一个实例方法称为Attributes。C#的Type.Attribute如何工作?
public TypeAttributes Attributes { get; }
返回TypeAttributes
类型的enum
。下面是该枚举的一些成员:
public enum TypeAttributes {
AnsiClass = 0,
Class = 0,
AutoLayout = 0,
NotPublic = 0,
Public = 1,
NestedPublic = 2,
NestedPrivate = 3,
NestedFamily = 4,
NestedAssembly = 5,
NestedFamANDAssem = 6,
VisibilityMask = 7,
NestedFamORAssem = 7,
SequentialLayout = 8,
ExplicitLayout = 16,
LayoutMask = 24,
...
}
但在另一方面,Type
类有提供太多的属性大部分的东西出现在此枚举:
IsPublic
IsClass
IsNestedFamANDAssem
IsAutoLayout
...
那么到底什么是Type.Attributes
?我想这不是一个bitmasked值,因为它是一个枚举,它只返回一个枚举的成员。并且这不是Type
类的静态属性,那么它究竟做了什么?
它为什么保持它是一个毫无意义的枚举,而不是将它变成int类型的? – 2013-02-18 21:53:12
@ahmetalpbalkan - 你是什么意思“无意义的枚举”? “int”会如何变得更有意义? – 2013-02-19 06:36:38