自C++11以來,C++標準每3年修訂一次。C++14/17均可以說是更完整的C++11;即將到來的C++20也已經特性完整了。html
C++11已經有好幾年了,它的年齡比我接觸C++的時間要長10倍不止吧(如今已經不到了)。我固然沒有體會過在C++11標準發佈以前用C++編程是什麼感覺,但相比我在上MOOC時使用的C++03標準,C++11中lambda表達式的語言特性以及 std::function 與 std::bind 等設施是十分方便的。同時,標準庫中的仿函數等也是與這些特性密不可分的。然而,其中一些特性的實現不可思議(曾經我甚至覺得 std::function 與編譯器內部存在某些聯繫),也難以理解,因此我要寫這個系列的文章。編程
這一系列文章介紹 <functional> 頭文件的實現,主要圍繞C++11標準展開,並伴有少許更新標準的內容。app
因爲 <functional> 中涉及到不少其餘的特性,我會在文章中簡要介紹它們的使用,並在文章結尾處附上相關文章連接。函數
文章連接:post
成員指針與mem_fn指針
還有一個 std::function 的擴展,有空寫。咕咕咕……code
相關資料:
[1] function/bind的救贖(上)(沒有下篇;此文寫於2010年,boost與TR1中已有 std::function ,但C++11還未發佈)
待補充……