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