having ambiguous grammar and "gratuitous, trivial, incompatibilities with C (...) that are of no greatbenefit"Linus Torvalds也说,C++是一种可怕的语言,而使用它的一大群水平很次的程序员,使得它变得更加可怕。
"C++ is a horrible language. It's made more horrible by the fact that a lot of substandard programmers use it"C++自己的语法是好的,可是过于的复杂,尤为像继承这些特性被乱用了之后,面向对象的那些优点会在那些质量糟糕的代码前面彻底丧失,有时候还会使得代码很是费解。
它(C++)对C语言中存在的一些最基本的问题没有什么改进,而它对C语言最重要的扩展(类)倒是创建在脆弱的C类型模型上。第十一章《你懂得C,因此C++不在话下》里还有一段话:
编程语言有一个特性,称为正交性(orthogonality)。它是指不一样的特性遵循同一个基本原则的程度(也就是学会一种特性有助于学习其余的特性)。例如,在Ada中,程序员一旦明白了包(package)的工做原理,也就可以把这个知识应用于泛型包中。使人不快的是,C++中的许多特性是非正交的。精通C++的某个特性并不能给你带来什么线索或向你启发适用于其余特性的思想模型。大多数程序员选择了只使用C++中较简单的一个子集的方法。