特性是Scala和C++中使用的一个概念(尽管在C++中,它更多是成语,而不是集成到语言中的概念)。虽然对我来说,这些概念之间的关系并不明显。 Scala和C++特性之间的关系是什么?

最佳答案

它们根本不相关。

在C++中,一个traits类是一个辅助对象,它告诉您一些有关类型的信息,而这些类型是您无法从类型名称本身获得的。 C++特性实际上更类似于Scala的def foo[A:Manifest]表示法(我不知道其专有名称的功能)。

Scala的特征实际上更像C++的多重继承(尽管它们在细节上有所不同)。我实际上对相当感到失望,因为C++的多重继承版本的正式名称为“多重继承”(排除所有其他变体),因为对Scala特质进行任何解释的第一句话应该是“特征是的多重继承形式...”

关于c++ - Scala和C++特性之间的关系是什么,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5212122/

10-11 22:37
查看更多