【发布时间】:2010-11-22 17:35:47
【问题描述】:
我有以下代码行,在 2010 年之前在 g++ 和 Visual Studio 下编译得很好。
std::vector<Device> device_list;
boost::function<void (Device&, boost::posix_time::time_duration&)> callback =
boost::bind(&std::vector<Device>::push_back, &device_list, _1);
Device 是一个类,没什么特别的。
现在我刚刚将我的 Visual Studio 版本升级到 2010,编译失败:
Error 1 error C2780: 'boost::_bi::bind_t<_bi::dm_result<MT::* ,A1>::type,boost::_mfi::dm<M,T>,_bi::list_av_1<A1>::type> boost::bind(M T::* ,A1)' : expects 2 arguments - 3 provided C:\developments\libsystools\trunk\src\upnp_control_point.cpp 95
发生了什么,我该如何解决?
谢谢。
【问题讨论】:
标签: c++ visual-studio-2010 boost bind