高手请进!Hashtable的value是自定义类型时,如何取value?
//自定义结构struct T {public int a,public int b}
Hashtable ht=new Hashtable();
T t=new T(..)
ht.add(1,t);
foreach (DictionaryEntry objDE in ht)
{
(T)(objDE.Value). //这为什么不行呢?
}
--------------------编程问答-------------------- foreach (DictionaryEntry objDE in ht)
{
T t=(T)(objDE.Value);
} 这样也行 --------------------编程问答--------------------
看到你刚才的答复了,谢谢! --------------------编程问答-------------------- 楼主的编码习惯很不好:
struct T {public int a,public int b}
====>
struct T {
public int a;
public int b;
}
T t=new T(..)
====>
T t = new T();
foreach (DictionaryEntry objDE in ht)
{
(T)(objDE.Value). //这为什么不行呢?
}
====>
foreach (DictionaryEntry objDE in ht)
{
(T)(objDE.Value); //这为什么不行呢?
}
--------------------编程问答--------------------
你理解错了,
他的意思(T)(objDE.Value).(点)怎么a跟b就出不来 --------------------编程问答-------------------- Dictionary<string, T> hs = ....
foreach(KeyValuePair<string, T> kv in hs)
{
kv.Value...
}
参考: C# 2.0 泛型
补充:.NET技术 , C#