我想创建一个字典来将字符串与类相关联,例如:
"dog" -> Dog class
"cat" -> Cat class
所以我试过这个
public Dictionary<String, Type> dic = new Dictionary<String, Type>();
dic.Add("dog", Dog);
但Add不接受Dog
。
那么语法是什么?
答案 0 :(得分:11)
您应该使用typeof
运算符来获取相应的Type
对象:
public Dictionary<String, Type> dic = new Dictionary<String, Type>();
dic.Add("dog", typeof(Dog));
答案 1 :(得分:5)
在.Net中有一个专用类System.Type
,用于描述系统中的类/结构/枚举(任何类型)。 Dog
是您想要了解此信息的类,要获取此信息,您可以使用Type
仅使用typeof(Dog)
检索它,或者 - 如果您有{{1}的实例你可以使用Dog
答案 2 :(得分:2)
public Dictionary<String, Type> dic = new Dictionary<String, Type>();
dic.Add("dog", typeOf(Dog));
答案 3 :(得分:0)
typeof(Dog)如果Dog是一个对象