摘要:前言在上一篇blog中簡單的實現了boost::function,支持帶有2個參數的函數/函數指針,函數對象,函數適配器/bind類,以及帶有1個參數的成員函數指針。本文接著來介紹如何實現一個簡單的boost::bind。基本目標如下:支持接收0個參數的函數/函數指針,函數對象。支持接收1個參數的函... 閱讀全文
boost::function的簡單實現
2014-12-17 20:35 by origins, 3715 閱讀, 5 推薦, 收藏,
摘要:前言boost::function和boost:bind是一對強大的利器。相信用過的童鞋多少有些體會。雖然平時在用boost::function,但是用的時候心中總會一些不安,因為不知道它是怎么實現的。于是,就自己琢磨著簡單的實現一下,搞明白基本的原理。對于這個簡單實現,有以下幾個目標:選取比較常見... 閱讀全文
聊聊C++模板函數與非模板函數的重載
2014-12-02 20:22 by origins, 4047 閱讀, 7 推薦, 收藏,
摘要:前言函數重載在C++中是一個很重要的特性。之所以有了它才有了操作符重載、iostream、函數子、函數適配器、智能指針等非常有用的東西。平常在實際的應用中多半要么是模板函數與模板函數重載,或者是非模板函數與非模板重載。而讓模板函數與非模板函數重載的情況卻很少。前段時間在項目中偶然遇到了一個模板函數與... 閱讀全文
解析gtest框架運行機制
2014-12-01 21:59 by origins, 9826 閱讀, 5 推薦, 收藏,
摘要:前言Google test是一款開源的白盒單元測試框架,據說目前在Google內部已在幾千個項目中應用了基于該框架的白盒測試。最近的工作是在搞一個基于gtest框架搭建的自動化白盒測試項目,該項目上線也有一段時間了,目前來說效果還是挺不錯的。侯捷先生在《STL源碼剖析》中說過一句話:”會用STL,是... 閱讀全文
紅黑樹插入和刪除的情況分析
2014-11-03 18:57 by origins, 2412 閱讀, 3 推薦, 收藏,
摘要:前言紅黑樹是特殊二叉查找樹的一種,一棵紅黑樹有以下5種性質:根節點為黑色。每個節點不是黑色就是紅色。每個紅色節點的兩個兒子一定是黑色。所有的葉子節點都是黑色。(注:這里的葉子節點并不是真正意義上的葉子節點,而是一種只有顏色屬性但不存放數據的節點,而且其沒有兒子節點)一個紅黑樹的中任取一個節點,從它所... 閱讀全文
浙公網安備 33010602011771號