泛型变量如何传递
泛型变量怎么传递?
src是类Player中的泛型属性,定义如下:
在类myC中,我需要使用src的值,所以在构造时传递进去,代码如下:
出现编译错误:错误 未能找到类型或命名空间名称“TSRC”(是否缺少 using 指令或程序集引用?)
对泛型的用法不太熟悉,这里应该怎么写呢?还有别的更简洁的办法吗?谢谢指教!
------解决方案--------------------
或者也可以这样
class myC
{
public myC<T>(T _src) where T : class
{
}
}
可以在方法上定义泛型,where 后面约束该类型必须是一个引用类。
------解决方案--------------------
T和TSRC是一样的,都只是一个泛型的标识符而已。关键在于声明实例的时候就要指定类型
myC<int> myc;
myc = new myC<int>(src);
src是类Player中的泛型属性,定义如下:
- C# code
class Player<TSRC> where TSRC : int, float { public static TSRC src { get; set; } }
在类myC中,我需要使用src的值,所以在构造时传递进去,代码如下:
- C# code
class myC { public myC(TSRC _src)//编译错误 { } }
出现编译错误:错误 未能找到类型或命名空间名称“TSRC”(是否缺少 using 指令或程序集引用?)
对泛型的用法不太熟悉,这里应该怎么写呢?还有别的更简洁的办法吗?谢谢指教!
------解决方案--------------------
或者也可以这样
class myC
{
public myC<T>(T _src) where T : class
{
}
}
可以在方法上定义泛型,where 后面约束该类型必须是一个引用类。
------解决方案--------------------
T和TSRC是一样的,都只是一个泛型的标识符而已。关键在于声明实例的时候就要指定类型
myC<int> myc;
myc = new myC<int>(src);