assignment-operator

    21热度

    5回答

    在实现一个虚拟赋值运算符的时候,我以一个有趣的行为结束了游戏。这不是编译器故障,因为g ++ 4.1,4.3和VS 2005共享相同的行为。 基本上,对于实际正在执行的代码,虚拟运算符=的行为与任何其他虚拟函数的行为不同。 struct Base { virtual Base& f(Base const &) { std::cout << "Base::f(Base cons

    12热度

    6回答

    考虑一个需要制作副本的类。拷贝中的绝大多数数据元素必须严格反映原始数据,但是有少数元素的状态不会被保留,需要重新初始化。 从复制构造函数调用默认赋值运算符是否是错误的形式? 对于每个赋值运算符,默认赋值运算符对于普通旧数据(int,double,char,short)以及用户定义的类都会表现良好。指针需要分开处理。 其中一个缺点是,由于不执行额外的重新初始化,因此此方法会使赋值运算符瘫痪。禁止使用

    2热度

    2回答

    我有关于嵌套模板和重写赋值运算符的问题。 假设我想要一个refcounting类模板_reference。现在这个_reference只是 包含一个指向ref-counting对象的指针。现在的问题是,这一切工作正常, 只要我用简单的类或结构做这个。例如。 _reference ..., 但现在我想做一个类模板,它是一个std向量转发它所持有的类的引用。 不,我只是张贴代码:(它没有做引用计数和的

    0热度

    2回答

    我试过尽可能地搜索文档和互联网,但是我一直无法让Xcode编译器在if语句中使用赋值运算符时发出警告。 我是从REALbasic的,在那里我有键入这种比较的一个极强的习惯来: if x = 5 then ... 在C,当然,这句法分配的x 5个,然后测试值看到的结果,如果是非零和“正确”的操作是: if (x == 5) { ... } 我已经发现了几个提到,编译器应该能够发出警告,如果有

    488热度

    6回答

    R中的赋值运算符=和<-之间有什么不同? 我知道,运营商略有不同,如本例所示 x <- y <- 5 x = y = 5 x = y <- 5 x <- y = 5 # Error in (x <- y) = 5 : could not find function "<-<-" 但这是唯一的区别?