C++成员函数指针及C++函数对象

今天下午去图书馆淘书,又把《C++必知必会》借来了。我记得自己是没怎么看过的,翻了几页才发现很多文字似曾相识。原来当初就看了两三节,真是汗颜。

C++这门课程当初学得倒是挺好,不过时过境迁,许多生僻的语法大抵都忘光了。比如说函数成员,看到"->*"这玩艺儿我心里都发忤。

好还,谷歌一下就真相大白了:http://campus.chsi.com.cn/xy/com/201006/20100617/97808273.html

说实话,《C++必知必会》这本书翻译得太过稀烂,看到他把积分翻译成整合,哥不禁会心地笑了。为了表示我读过,我把最后一段代码Mark一下。

1 class Func { 2     public: 3           virtual ~Func(); 4           virtual double operator()(double) = 0; 5 }; 6  7 template <class C> 8 class MFunc : public Func { 9 public:10     MFunc( C &obj, double (C::*f)(double) ): obj_(obj), f_(f) {}11     double operator ()( double d ) { return (obj_.*f_)( d ); }12 private:13     C &obj_;14     double (C::*f_)( double );15 };16 17 18 AClass anObj;19 MFunc<AClass> f( anObj, &AClass::aFunc );20 double area = integrate( f, 0.0, 2.71828 );

原文链接: https://www.cnblogs.com/cmleung/archive/2011/05/23/2054646.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/25955

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月8日 上午3:43
下一篇 2023年2月8日 上午3:44

相关推荐