我正在尝试使用GCC 4.9.2(在Windows中)构建John Torjo的eGUI库,消除boost
的所有依赖。
在几个文件中我找到了这个typedef:
typedef std::function1 <void, event_type &> func;
编译时,我收到以下错误:
.. \ .. \ Egui \ core \ detail \ event_handler.hpp | 44 | error: 'function1' in namespace 'std' does not name a template type |
boost文档定义了类模板FunctionN :
boost::FunctionN
- 一组通用函数指针,可用于回调或包装函数对象。
现在,我问:boost::function1
可能被一些标准类所取代?
在<functional>
中,我似乎找不到任何可能达到此目的的东西。
答案 0 :(得分:3)
你应该改变所有
boost::functionN<R, A, B, C, ...>
到
std::function<R(A, B, C, ...)>
(N现在不相关,标准库可以从A,B,C,...列表中计算出N)