C#中的 泛型 有缺点吗?是什么缺点???在Google查了一下没有缺点?? 如题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 C#的泛型基本就是当年泛型提出的时候的本意,如果有缺点,也是泛型的缺点而不能算是c#泛型的缺点了.相对于c++的模版,C#的泛型说他毫无缺点也不过分.c#泛型完成了真正的泛型定义封装,使泛型本身也可以成为一个黑盒模块,不会像c++那样出现非常难以理解的实例化错误,使用起来其实还是要把模版库学透,并且经常看到菜鸟程序员的菜鸟用法,造成潜在的程序错误. .NET的泛型唯一的缺点是...它太容易学又太难理解,以至于绝大多数新手直接把泛型集合和泛型混为一谈,把避免装拆箱当做泛型的唯一目的...反而将泛型的本质都抛弃掉了... C#中的泛型的缺点,就是封装的太好了,新手难以理解其本质自定义泛型类或泛型方法时,经常使用不当或设计不当为OO设计增加了新的复杂度 说了一堆,把我弄的也不知道泛型的真正目地是什么了?不就是类型参数化吗?以节省Boxing、Unboxing?什么什么晕了 C#的泛型 对比 C++的模板 给个例子public class A<T>{ public void F1(T _o) { _o.init();//此处对于C#非法 编译时不知道T是否支持.init 但对于C#这种类似解释的语言原理应该是做得到的 为什么不支持? }}C++模板template class A<class T>{public: void F1(T& _o) { _o.init();//合理 如果T不支持init,只需A<T>不调用到F1就行 利用这种原理甚至可以在编译时查出程序的逻辑错误 }} 在线等,100分求教C#制作一个不要IIS 就可以运行网站的东东,局域网还可以访问的 如何用私钥加密,公钥解密? 对象初始化的问题 朋友们帮帮忙 如何实现虚拟框架(不用其他工具或者飞信) c# 复制 粘贴 序列化与反序列化的问题 请各位看看,应该怎样解决!!! 找份工作 &&&&&&&如何做个背单词的程序&&&&&&&&& 调用别人接口得不到数据 serialport 真得让我快疯了。
相对于c++的模版,C#的泛型说他毫无缺点也不过分.
c#泛型完成了真正的泛型定义封装,使泛型本身也可以成为一个黑盒模块,不会像c++那样出现非常难以理解的实例化错误,使用起来其实还是要把模版库学透,并且经常看到菜鸟程序员的菜鸟用法,造成潜在的程序错误.
public class A<T>{
public void F1(T _o)
{
_o.init();//此处对于C#非法 编译时不知道T是否支持.init 但对于C#这种类似解释的语言原理应该是做得到的 为什么不支持?
}
}C++模板
template class A<class T>{
public:
void F1(T& _o)
{
_o.init();//合理 如果T不支持init,只需A<T>不调用到F1就行 利用这种原理甚至可以在编译时查出程序的逻辑错误
}
}