std-function

    13熱度

    7回答

    這可能是一個哲學問題,但我遇到了以下問題: 如果你定義一個std ::功能,你不正確初始化它,你的應用程序會崩潰,就像這樣: typedef std::function<void(void)> MyFunctionType; MyFunctionType myFunction; myFunction(); 如果函數作爲參數傳遞,就像這樣: void DoSomething (MyFunct

    3熱度

    1回答

    首先,有一點背景知識:在我的工作中,我們綁定回調以便稍後調用,這可以使嘗試跟蹤通過日誌的控制流相當困難。爲了解決這個問題,我們使用「日誌上下文」,它可以讓您在系統中查看請求。您可以使用靜態功能log_context::get_current複製當前上下文,並使用靜態功能log_context::set_current進行恢復。這導致每次我們向工作隊列發回回調時導致大量重複的代碼。 我想製作一個功能

    4熱度

    1回答

    我想實現一個類,它包含兩個具有預定義函數簽名的回調函數。 該類有模板ctor,它使用std :: bind來創建std :: function成員。如果一個帶有錯誤簽名的函數被傳遞給ctor,我預計編譯器(g ++ 4.6)會抱怨。但是,編譯器接受以下內容: callback c1(i, &test::func_a, &test::func_a); 我可以理解爲什麼它會這樣做。我試圖爲stat

    15熱度

    4回答

    我看慣了語法像這樣的函數指針 int (*pointer_name) (float, char *); void call_function (void (*)(int), int); 在我看到的類型使用這樣一些C++ 03功能庫: abc::function<void(*)(int,float)> f; 在C++ 11的std::function我看到這樣 std::function<

    4熱度

    1回答

    我創建了一個boost :: asio :: io_service的包裝來處理OpenGL應用程序的GUI線程上的異步任務。 任務可能是由其他線程創建的,所以boost::asio對於這個目的來說似乎是理想的,並且意味着我不需要用關聯的互斥鎖和鎖定編寫我自己的任務隊列。我希望將每幀的工作都保持在可接受的閾值以下(例如5毫秒),所以我打電話給poll_one,直到超出所需的預算,而不是致電run。據

    42熱度

    5回答

    在我的C++應用程序(使用Visual Studio 2010),我需要存儲一個std ::功能,如: class MyClass { public: typedef std::function<int(int)> MyFunction; MyClass (Myfunction &myFunction); private: MyFu