【发布时间】:2011-08-26 08:51:15
【问题描述】:
我已经注意到C# generics are quite different from C++ templates。我已经阅读了this question 并对其进行了解答,并对其中的区别有了基本的了解。
但是我不明白这种设计差异的原因。我的意思是,在设计 C# 时,C++ 已经相当发达。在 C++ 模板中,C# 开发人员没有克隆 C++ 模板,而是引入了差异如此巨大的泛型,什么是次优的?
泛型可以做什么 C++ 模板不能做的事情? C# 泛型在哪些方面优于 C++ 模板?设计 C# 泛型与 C++ 模板行为不同的原因是什么?
【问题讨论】:
-
第二个问题是C++ vs java generics
-
一个主要优点是静态类型。
-
@George:模板和泛型都是静态类型的
-
为什么会有人让泛型表现得像 C++ 模板?它们最大的共同点是尖括号。请记住,泛型是 CLR 的一个特性 - 它们在 C# 和 VB.Net 中都公开。
-
@Joren,对不起,我的 c++ 生锈了!
标签: c# .net c++ templates generics