temporary-objects

    6熱度

    2回答

    在問候時,臨時對象被摧毀,這是有效的: FILE *f = fopen (std::string ("my_path").c_str(), "r"); 請問暫時是具有評估的第一個參數fopen之後或者fopen立即銷燬呼叫。 測試用下面的代碼: #include <cstdio> using namespace std; struct A { ~A() { printf ("~

    5熱度

    4回答

    我有一個類型的對象,例如,std::vector<int> v; 現在,比方說,我想驗證v釋放它的所有內部存儲器。 在C++ 11 shrink_to_fit()方法之前,建議/保證的方法是將swap()與空的std::vector<>設置爲相同類型。 但是,我不想指定對象的類型。我可以用decltype指定類型,所以我想寫的東西是這樣的: std::vector<int> v; // use

    3熱度

    2回答

    char f1(); void f2(char&); struct A {}; A f3(); void f4(A&); int main() { f2(f1()); // error C2664. This is as expected. f4(f3()); // OK! Why??? } 錯誤C2664: '無效F4(炭&)':不能從 '字符' 轉換

    0熱度

    1回答

    #include <iostream> using namespace std; struct A { A() : _p(new int(1)) {} ~A() { *_p = 0; delete _p; _p = nullptr; } int* _p; }; int

    0熱度

    3回答

    所以我的問題很簡單,但我無法修復它。我有2個目的之一是暫時的,第二個是永久性的,臨時對象從永久獲取數據,但是當我在臨時,永久對象chaing太例子做的動作: var permObject = { data1: 1, data2: 4, } tmpObject = permObject tmpObject.data2 -= tmpObject.data1; console

    0熱度

    1回答

    我有兩個需要溝通的PHP腳本。我知道PHP中的IPC並不是真的。我正在想辦法做到這一點,並且這兩個腳本都訪問MySQL服務器上的同一個數據庫。通信不需要是實時的(但需要相對較快)。 我認爲通過表格來回傳遞數據將是一個很好的方法來做到這一點。 問題:我想確保此表僅駐留在內存中。主數據庫應用程序是70%讀取/ 30%寫入,但寫入很少更新。數據庫將隨着時間的推移而增長,但很少有任何事情會被刪除。爲了提高

    6熱度

    3回答

    在C++ 11標準12.2: 臨時到該參考結合或臨時即 ,其參考結合 一個子對象的完整對象持續的壽命參考以下情況除外: 臨時結合 在一個構造的構造函數,初始值設定的基準構件(12.6.2) 持續直到構造退出。 臨時綁定到一個函數調用中的參考參數 (5.2.2)將一直存在,直到完成包含該調用的全表達式的 。 在函數返回 語句(6.6.3)中臨時綁定到返回值的生存期 未被擴展;在返回語句中的全表達式的

    2熱度

    1回答

    我有兩個類結構如下: struct A { A transform() const; }; struct B { // returns a temporary A A operator*() const; }; 的*操作可能看起來有點怪異這裏,但考慮到其使用的範圍實際上是很自然的。實際上,B真的只存在於爲嵌入式語言提供一些合成糖,所以它的方法和操作符被設計

    0熱度

    1回答

    我有一個接受構造函數中的istream引用的類。如果構造函數通過臨時對象,如myclass obj(ifstream("filename"));那麼ifstream會對obj的生命有用嗎?它取決於它是否被分配給類中的引用或指針? 例如: class test { public: istream *p; test(istream &is) { p = &

    1熱度

    1回答

    我正在研究一個nGrams,並且我使用嵌套的TreeMap類數據結構來存儲ngrams。 Quadgrams的模板如下所示。 public TreeMap<String, TreeMap<String, TreeMap<String, TreeMap<String, Integer>>>> ngramWordCounter; 當我試圖把它記錄到文件中,基本上我遍歷第一張地圖的密鑰集,然後進入第