首页 > 学院 > 开发设计 > 正文

C#关于使用枚举遇到的问题----Type运算符使用的必要性

2019-11-14 15:48:38
字体:
来源:转载
供稿:网友

我定义了一个枚举AttributeName

然后写到下面代码:

Enum .GetValues (AttributeName );

毫无疑问的错了。别人说要加个Typeof

也就是Enum .GetValues (Typeof(AttributeName ));

那么问题来了,为什么要使用Typeof运算符?

Typeof(xx)表示返回xx类型的一个对象,Typeof(AttributeName )就是返回了一个AttributeName类型的对象.

参考链接 https://msdn.microsoft.com/zh-cn/library/58918ffs

也就是说这里的AttributeName并不是个对象,只是个名字或者说是个AttributeName类型,这对于枚举来说都是一样的!

而仔细参阅GetValues()方法的参数信息显示是这样的:

public static Array GetValues(	Type enumType)
要求参数是
Type enumType 即 枚举类型的对象!没错是对象,y由此看来
处理枚举相关问题,Typeof运算符还真是必不可少!

第一次随笔,纯粹个人之心得。很希望所阅之同仁志士能指缺批漏,也希望对抱着问题来的同学有所帮助。
——by跃动的光子.博客园

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表