C++11其实已经问世好久了,很多的编译器已经支持了,而且这些编译器已经被加入了我们常常使用的IDE中。但是我还常常使用一些C98的标准。为什么呢,习惯,还是不想去学习?都有之。那是什么让我开始想去学学C11,并想把它用在工作中呢?懒吧。
首先看看C11的整体设计目标:
- 使得C++成为更好的适用于系统开发及库开发的语言。
- 使得C++成为更加易于教学的语言。
- 保证语言的稳定性。
从第一点能看出我们的开发将越来越简单,至少不同的系统的支持估计要更加好一些,egThread。从第二点我们又知道了学起来估计比较简单,而且我还是C98老手,who怕who。第三点就是为什么我现在不懂C11还能找到工作的原因,我想我该忘了它。
最终要的是我看到了使用C11写的代码,相比C98的确要少很多的代码量(搬砖搬多了,谁都会累)。据说依情况最多可以将代码缩短30%~80%。OMG,这个希望梦想成真。而且现在的西红柿(我对va_x的爱称)还tm自动弹出C11的语法,你说我不懂,我尴尬不?
最后简单说一下支持的编译器和IDE吧。IBM XLC/C++编译器10.1开始;GNU的GCC编译器4.3开始,因特尔编译器从10.1开始;而Visual Studio(VS)从2010开始。噢,苹果的clang/llvm从2.8开始也支持了新特性。对了,这些都tm是C11出来之前就支持了。所以不要说环境了,为了少磊点代码,C11标准学习现在起航了。