【发布时间】:2014-02-17 16:29:18
【问题描述】:
我有一些代码已经在 vs2008 上运行,我正在尝试将它移植到 vs2012。在这个源代码上,我使用了指定的函数 bind2nd 并使用了 std::bind2nd 并且一切正常。当我用 vs2012 编译相同的代码时,我得到一个错误,说 bind2nd 不是 std 的成员。我检查了 msdn,它说这是“功能”库的一部分。当我在我的盒子上寻找它时,我发现它不在其中,而是在 xfunctional 中,当 rc_invoked 未定义时,它包含在功能中。我的第一个想法是我定义了 rc_invoked 但我证明它不是。因此,遵循包含此 bind2nd 的链应该是 std 的一部分,我的代码不应该失败,但确实如此。我的想法已经用完了,所以任何想法都会受到欢迎。
干杯
【问题讨论】:
-
您是否包含了
<functional>标头?std::bind2nd已弃用,这意味着它应该仍然存在。
标签: c++ visual-studio-2012 c++11 std bind2nd