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