assignment-operator

    -2熱度

    1回答

    我無法理解以下內容: 假設我正在創建一個重載的賦值運算符。函數會是這樣的: MyObject& MyObject::operator=(const &rhs) { // code to make this work return *this; } 如果'this'已經是一個引用,爲什麼我需要取消引用它?爲什麼我需要返回對象而不是對象的引用,如返回類型所示?換句話說,爲

    1熱度

    1回答

    我重載了Arr類的賦值運算符。這是通過使用析構函數刪除舊對象(並釋放分配的內存),然後使用複製構造函數(先前被重載)來使調用對象成爲rhs的副本來實現的。 this圖片顯示了兩種不同的方式來做到這一點(只有第50行和第57行不同)。爲什麼第二個解決方案可行,但不是第一個? 的錯誤消息是「類型名稱是不允許的」 Arr& Arr::operator=(const Arr& rhs) { th

    1熱度

    2回答

    std::vector課程中的.operator=(std::initializer_list<T>)和.assign(std::initializer_list<T>)有什麼區別?他們也這樣做嗎? http://en.cppreference.com/w/cpp/container/vector/operator%3D http://en.cppreference.com/w/cpp/conta

    0熱度

    1回答

    超載賦值運算符,我需要一份簡歷::墊分配給CV ::三維點 cv::Point3d pt; cv::Mat mat(3, 1, CV_64F); pt = mat; 我試圖做到這一點在兩種不同的方式。第一次嘗試如下: template<typename _Tp> inline cv::Point3_<_Tp> & cv::Point3_<_Tp>::operator = (const

    0熱度

    1回答

    我知道的equals至少兩個不同的用途登錄在R-編程語言: (1),其爲棄用賦值運算符,即x = 3代替x <- 3。 (2)用於將參數的值傳遞給函數,例如ggplot(df, aes(x = length, y = width)) 這些運算符中的任何一個對應於對稱關係(in the sense of mathematics)? 的「等於」 ==操作符呢(我認爲),這就是爲什麼它最密切對應使用的e

    1熱度

    2回答

    你好,我有一個類Truck只有一個屬性int類型。我沒有在全班使用任何指針。我已經寫了2個版本的operator=的: Truck& operator=(Truck &x) { if(this != &x) { price=x.getPrice(); } return *this; } Truck operator=(

    0熱度

    2回答

    我正在寫一類是這樣的: class Digit { private : int *ref; public : Digit (int a) : ref(&a) {} int get_val() { return (*ref); } Digit operator= (int &a)

    1熱度

    1回答

    我在弄清楚爲什麼我無法得到std :: vector :: erase使用我自己的類對象的矢量時遇到了一些麻煩。下面的代碼拋出一個「沒有可行的重載‘=’」錯誤,並不能找出爲什麼一些廣泛的溢出搜索/ tutorialspoint後/ ... 我的類定義「MyClass.hpp」: #include <string> #include <vector> class node; class gra

    0熱度

    1回答

    根據該article,賦值操作符可以具有下列形式之一: (1) MyClass& operator=(const MyClass& rhs); (2) MyClass& operator=(MyClass& rhs); (3) MyClass& operator=(MyClass rhs); (4) const MyClass& operator=(const MyClass& rhs);

    0熱度

    1回答

    我有一個從循環創建的數據幀。該循環檢查對於給定暴露的幾十個結果的有序迴歸。 在循環開始時,定義了一個稱爲曝光的變量。示例:exposure <- "MyExposure" 在例程結束時,我想實際保存已編譯的結果數據集並使保存的數據對象的名稱與曝光相關。 我在根據變量名稱作出左側賦值時遇到了問題。 新的數據框的名稱應該是 paste0(exposure,"_imputed_ds") [1] "My