从C++转过来的,在C#也想实现一些实用功能 public class MyClass<T>
{
public T m_data = new T(); 能否在这里new T()?
public void foo(){m_data.foo();} 能否调用T类型的foo成员函数?
}
{
public T m_data = new T(); 能否在这里new T()?
public void foo(){m_data.foo();} 能否调用T类型的foo成员函数?
}
调试欢乐多
{
public T m_data = new T();
public String MyToString(){return m_data.ToString();}
}new T()也不行,通不过:
错误 2 变量类型“T”没有 new() 约束,因此无法创建该类型的实例 E:\lib\wince\protocolLib\PktParser.cs 27 27 protocolLib
=>
public class MyNode<T> where T: new ()
public class MyNode<T>where T:new()
{
public T m_data = new T();
public String MyToString(){return m_data.ToString();}
public void foo() {
dynamic data = m_data;
data.foo();
}
}
但还报错:
错误 2 找不到类型或命名空间名称“dynamic”(是否缺少 using 指令或程序集引用?) E:\lib\wince\protocolLib\PktParser.cs 30 13 protocolLib查到C#4.0中引入了动态类型机制,我是vs2005,不知支不支持C#2.0?