这个类比不知所云
C++的特性多,一是要进化来更好地描述和解决问题,二是为了不要break老代码,三是本身它要解决的问题就是有很多细节。
对比一下:
1、作为和C++定位在同一个层次的语言,Rust一样有很多细节和特性。C++面临的问题,Rust面前一个都跑不了,只不过Rust可能提供了不同的抽象和解决办法,而且有些是通过固化“最佳实践”(或者叫“上佳实践”)避免有些码农会采用很烂的办法去解决某个问题,提升下限,比如线程间共享数据就只能那么干,而不是象C++那样有一百种办法的自由度。
2、作为和C++定位在同一个层次的语言,C进化很慢,码农自己用C手动去实现C++编译器自动实现了的特性,诸如虚表之类的多态。但C码农自己未必意识到了这一点。
C++的有些特性,已经不再推荐使用,比如enum不要用,而是用enum class,因为进化出来的enum class能提供type-safe更好地解决问题,而enum是继承自C的,不是type-safe。
--
修改:z16166 FROM 114.254.115.*
FROM 114.254.115.*