GCC4.3發布了,終于可以試試傳說中的C++0x, 盡管只是部分。對于新的語言特性,也嘗試著了解了一下。
1)改變最大的語言特性就是右值引用了。花了半天去搞清楚什么是右值引用,對于std::move和std::forward這兩個函數也蒙了好長時間。覺得這個東西似乎對一般的開發者沒什么用處,除非你要開發一個C++庫。好象標準庫的容器除了basic_string外,基本上都支持了這點。智能指針shared_ptr也支持了右值引用。為了提高效率,又增加了語言的復雜性,這大概就是c++的語言哲學吧。
2)可變參數模板。這個用來實現std::function,std::bind及std::tuple.
3)static_assert。這個自己實現一個也很容易。
4)decltype。就是以前的__typeof__。這次只不過是扶正了。
5)模板中>>可以連著寫了。
6)函數模板也可以有缺省參數了。
7)。。。。
8)對于標準庫的一些容器算法采用了并行處理。看來還是要盡可能多的使用標準庫。
不過我編譯了一個標準的HelloWorld(使用iostream),Debug 版本的可執行文件竟然為3.5M,幸好Release下還沒有增加太多。