使用boost::intrusive::function_hook的示例程序
boost::intrusive是一个利用C++模板实现的可嵌入式容器库,它提供了如list、set、slist等STL风格的容器,并且能与Boost Smart Pointer、RTTI、TR1中的hash等其他库无缝衔接。其中,boost::intrusive::function_hook是其提供的一种钩子机制,可以将类对象嵌入到函数对象中。
下面是一个使用boost::intrusive::function_hook的示例程序,该程序定义了两个类Foo和Bar并将它们嵌入到一个function对象中:
#include <iostream>
#include <boost/intrusive/function_hook.hpp>
class Foo : public boost::intrusive::function_hook {
public:
void operator()() { std::cout << "Hello, world!" << std::endl; }
};
class Bar : public boost::intrusive::function_hook {
public:
void operator()() { std::cout << "Goodbye, cruel world!" << std::endl; }
};
int main() {
// 定义一个function对象
boost::function<void()
本文介绍了如何使用boost::intrusive::function_hook创建可复用的函数对象。通过示例程序展示了如何定义Foo和Bar类,继承自function_hook,并将它们插入到boost::function<void()>中,实现可调用对象的存储和执行,展示其在高性能和可扩展性方面的优势。
订阅专栏 解锁全文
123

被折叠的 条评论
为什么被折叠?



