stdbind

    10热度

    4回答

    C++中的大部分内容都是0,而不是1。出于好奇,为什么占位符1基于?含义_1是第一个参数,而不是_0。

    4热度

    1回答

    很适合我的另一个令人不安的错误信息,如果我理解的std ::绑定正确,我可以像参数来_1的限定非定的参数?对?那么考虑下面这一行: std::function<bool(value_type, const std::string &)> func(std::bind(&Pred, _1, "name")); 这应该工作吧?这将被用于一个std :: find_if()函数

    6热度

    2回答

    我正在探索g ++-4.7(Ubuntu/Linaro 4.7.3-2ubuntu〜12.04,具体)对C++ 11的支持,我似乎在寻找差异。 特别是,如果我注释掉#include <boost/bind.hpp>和系统地在升压ASIO异步客户端的例子(从http://www.boost.org/doc/libs/1_45_0/doc/html/boost_asio/example/http/cl

    4热度

    1回答

    我试图使用std ::转换与std :: bind来简化循环。这里有一些代码: class ITest { public: virtual CPrueba Prueba(double p, double d = 0)const = 0; }; void foo(const ITest& test) { std::vector<double> v; std:

    0热度

    1回答

    我想了解std :: bind如何工作。我写了以下内容: #include <iostream> #include <algorithm> #include <functional> using namespace std::placeholders; int fun2(int i,int j) { return i+j; } int fun(int i) {

    11热度

    1回答

    我有一个成员函数与几个参数。我想将它绑定到特定的对象实例并将其传递给另一个函数。我可以用占位符做到这一点: // actualInstance is a MyClass* auto callback = bind(&MyClass::myFunction, actualInstance, _1, _2, _3); 但是,这是一个有点笨拙 - 一,当参数变化的次数,我不得不改变所有的绑定电话也

    2热度

    1回答

    TLTR:我想根据存储在可变参数模板列表中的索引定义的特定顺序将某些数组从模板容器映射到函数的参数(我想不出一个更简单的方法来定义问题)。 使用void*存储数组,但数组之间的类型安全性以及函数参数由辅助类保证。相同的助手类必须扩展给定的参数包,获取适当的数组,将它们绑定到函数指针并调用函数。这是我卡住的地方。 详细:我很抱歉提前处理冗长的问题和发布的代码,但没有编译,但我试图尽可能简洁。 问题在

    4热度

    1回答

    我正在重构“同步”代码(即,使用Windows事件等待某个其他线程完成某件事情)到“异步”代码(使用委托来实现回调机制)。 在同步代码中,我有时在等待结束后需要使用局部变量。当这样的代码变为异步时,这些局部变量将会丢失(回调处理程序无法访问它们)。我可以将它们存储为类的属性,但它感觉很浪费。 在C++中,我使用std::bind来解决这个问题。我只需添加与回调处理程序所需的局部变量相同的参数,并在

    0热度

    1回答

    我将一个copy_if绑定到一个将接受一对迭代器的函数对象中。我有一个警告,说我正在返回一个本地地址或临时地址。 我已经知道它来自std :: pair迭代器的绑定成员变量,但我不知道如何纠正它。我不明白为什么他们被认为是暂时的。有人可以向我解释吗? 这里是相关的代码。该环境是Visual Studio 2010 Ultimate,对Windows 7 Enterprise的帮助不大。 std::

    9热度

    2回答

    我正在玩std :: function和std :: bind的arround,我发现了一些不直观的东西,我想更好地理解它。 例如: void fun() { } void hun(std::string) { } int main() { function<void(int)> g = &fun; //This fails as it should in my un