不要把语言前身与替代语言混为一谈



不过,把C++简单说成“C语言加上面向对象”并不完整。C++后来发展出了泛型编程、函数式风格、RAII、模板元编程和多范式编程等内容。它既继承了C对运行效率和资源控制的重视,也受到Simula面向对象思想的影响。因此,如果“精神传人”强调的是设计理念,答案可以写成“以C为基础、吸收Simula等思想的C++”;如果强调的是标准版本,则答案应当是C++14。



如果问的是C++语言本身,它的直接前身是C



在技术文章中,D语言、Rust等有时会被形容为C++的“精神传人”或“替代者”。这类说法主要是在比较系统编程能力、运行效率、抽象能力和内存管理方式,并不表示它们是C++标准意义上的后继版本。



“C++的千年之问”更像是标题修辞,并没有对应的官方🌈术语。就“17c.c++是谁的精神传人”这句话而言,最稳妥的解释是:它很可能把C++17写成了“17c.c++”。在这种情况下,它承接的是C++14;若追溯C++这门语言的源流,则其直接基础是C语言,设计思想还受到Simula等语言的影响。



举报/反馈