为什么使用C++
http://tech.ddvip.com 2007年09月13日 社区交流
内容摘要:本文给出了我们需要使用C++的原因和理由,您觉得这些理由充分吗?文中针对C++的贬低和相应对C语言的抬高给出的原因,您觉得是正如作者所说这样的吗?
结论
C++很难,难于正确使用。所以当你决定要用它的时候,一定要小心谨慎,一定要清楚你处在什么位置,你真正想要什么。下面是一个简单的导引:
我们需要高效吗?
如果需要,那么
在我们的代码中需要抽象吗(这个问题一定要慎重考虑,因为很难估计使用C++的高水平特性所带来的好处是否超过了正确使用它们的风险;正确的答案取决于你的编程水平训练的有多好,你遵循什么编码标准,以及这种标准加强的有多好,等)?
如果需要,那么就使用C++,否则,
我们需要C++类库来减少我们的工作量吗?
如果需要,那么就使用C++,但同时要谨记你在做什么——如果你的代码并不真的需要所有梦幻抽象,那就不要勉强使用它们;不要仅仅因为你写的代码是.cpp,你使用了C++编译器,就使用类或是模板。
否则,就使用C++,但是你可能会怀疑为什么不用C++的C编码核心。同样的理由:人们很容易被稀奇古怪的语言特性所迷惑,即使他们真的不知道这些特性对他们是否有帮助——我可以不厌其烦地告诉你,我写过一串类,只是为了找出“这些类到底是什么鬼东西”。所以,如果你能坚持C核心或是带有部分C++的C核心,并且保持事情简单(KISS);或者如果你的代码需要从C移植到C++,那么就使用C++吧!但是一定要小心。另一方面,如果你的代码既不需要高性能特性,也不需要C++类库,因为你要做的事情很简单,以至于你甚至不需要像是containers或是strings这样方便的组件;或者你认为你的项目中使用C++能给你带来的好处不足以值得你冒险;或者只是因为你没有足够能正确使用C++的人员,那么你应该还是坚持用C。
最主要的:保持事情简单(KISS)(但是要记住这种简单可以通过使用高水平类库来达到);必要的时候(即使是必要,也要少用;遵循好的设计原理,养成好的习惯)使用抽象。
来源:51CTO.com 作者:刘未鹏 责编:豆豆技术应用