為什麼說C++很牛呢,,,因為只有你想不到的,沒有C++做不到的...
----------------------------------------------------------------------------------------------------------------------------------------------------
之前,已經學習過C++中STL中的泛型的,模板,這種通用性,使得我們,用它的人,心花怒放,熱血沸騰,呵呵~~!
----------------------------------------------------------------------------------------------------------------------------------------------------
接下來,學習的,函數,函數模板,函數對象,函數對象模板,這些東西,在做C++程式設計與項目開發的時候可能更有用...
回調機制,實現了C++中類間訊息傳遞,當這兩者遇到一起的時候,會出現什麼情況呢,,,呵呵~~~
先看一段代碼:
----------------------------------------------------------------------------------------------------------------------------------------------------
這裡覺的直接貼代碼的話,這裡的布局格式不是很好,,就把帖出來了:
----------------------------------------------------------------------------------------------------------------------------------------------------
1>a是一個普通函數,實現參數與7的比較,
2>b函數實現一個簡單回呼函數的功能
注:我當時只是測試,沒有想太多,這裡,a,c,d是一個類型的,是做為被回調的函數(函數傳參),,,
而b函數則是用來實現回調的,即調用a,c,d的...給讀者帶來的不便請原諒....
解釋:這裡為什麼要用模板呢..很簡單,想一下模板的特性,,,不錯,因為b是一個通用函數(函數頭很通用,可是函數體就不通用了.呵呵,這個讀者可以自己研究下怎麼通用),,,(可別小看了這個函數(它函數體只有一句話))
3>c是一個類,這裡用作函數對象,它實現,參數與任意給定值比較(這正是函數對象的精髓,可以看成是一個a類函數的集合或者叫抽象,自己怎麼好理解就怎麼理解)
4>d類是一個模板函數對象,實現任意類型與任意給定類型比較
注1:當然它的實現也不是通用的.(可以很容易看出,這裡只能比較重載了>號的類型)
注2:當然還可以擴充,比如,這裡只實現了>這樣的比較..可以把任何操作都加進去,同樣,這裡只實現了返回bool,也可以把其它自己想要的返回加進去,,(重載不難實現吧.)
----------------------------------------------------------------------------------------------------------------------------------------------------
最後祝大家每天都有進步......
共同進步!!~~~~
轉載請註明出處:http://blog.csdn.net/jing51536
謝謝!!~~