使用enable_shared_from_this基类和该基类带来的shared_from_this()方法。DownCounter被加上基类enable_shared_from_this<T>
代码如下:
代码先通过shared_from_this()方法安全正确地复制智能指针counter,再通过lambda表达式以“捕获”的方式实现传递。
如果不想使用Lambda表达式呢?让我们想象:(1)函数对象?不行,之前就是使用函数对象,语法格式难以传递指针对象;(2)C风格的函数指针?不好,成员函数的函数指针难弄还丑。
没错,只剩下function类型了,这是下一篇博文的内容。