temporary

    3熱度

    5回答

    是下面的代碼安全(它在DEBUG): void takesPointer(const Type* v);//this function does read from v, it doesn't alter v in any way Type getValue(); ... takesPointer(&getValue());//gives warning while compiling "n

    5熱度

    4回答

    我嘗試下面的代碼: #include<iostream> #include<string> using namespace std; string f1(string s) { return s="f1 called"; } void f2(string *s) { cout<<*s<<endl; } int main() { string

    13熱度

    6回答

    (我問在comp.std.C++這個問題的變化,但沒有得到答案。) 電話爲什麼要f(arg)在此代碼調用const ref超載f? void f(const std::string &); //less efficient void f(std::string &&); //more efficient void g(const char * arg) { f(arg); }

    1熱度

    2回答

    我有一個單位有很多的動作,一些動作有快捷方式,有些甚至有相同的快捷方式。這是因爲它們屬於應用程序中的不同模塊,並且它們不同時處於上下文中。 現在我有一個全局非模態對話框(稱爲objectinspector),可以隨時隨地啓動。它有一些快捷方式與模塊中其他地方相同的動作。 所以我想暫時覆蓋當objectinspector處於活動狀態時共享相同快捷方式的操作,並在停用時釋放它。 我有這樣的代碼在obj

    9熱度

    5回答

    假設我想將一個臨時對象傳遞給一個函數。有沒有辦法做到這一點在1行代碼與2,結構? 隨着一類,我可以這樣做: class_func(TestClass(5, 7)); 給出: class TestClass { private: int a; short b; public: TestClass(int a_a, short a_b) : a(a_a), b

    9熱度

    1回答

    在Herb Sutter的博客上閱讀this article之後,我嘗試了一下,遇到了一些困惑我的東西。我正在使用Visual C++ 2005,但如果這是依賴實現的,我會感到驚訝。 這裏是我的代碼: #include <iostream> using namespace std; struct Base { //Base() {} ~Base() { cout <<

    8熱度

    5回答

    我有一個std :: vector,我需要通過選定的算法對某些操作進行排序,但在其餘時間保持其原始狀態(例如,當它們進入時排序的項目)。 很顯然,我可以使用std ::副本創建一個臨時矢量和排序,但我不知道是否有更好的方法,可能是通過時間戳的項目進入。 乾杯