實施例: A myfunction() { return A(); }
A a = myfunction(); // default ctor only (return value optimization)
a = myfunction(); // default ctor and operator=
爲什麼不能編譯器只寫新對象插入到現有對象?我相信一個類的所有實例都佔用相同數量的(非動
我有一個繼承另一個類(類B)的類(A類)。 class A: public B
B類禁用的複製構造和賦值操作符(由於不允許副本)。 private:
B(const B&);
B& operator=(const B&);
我的問題是,是否也應該禁止拷貝構造和賦值操作符在派生類中一樣好,甚至是好的,如果我沒有界定兩者。
我想要得到的東西是這樣的: // instead of having to write
a.b = 'c'; return a;
// i'd like to write
return a.b = 'c';
// but this will return a.b instead of a
// a (cumbersome) alternative is
return Object.de
public static void main(String[] args)
{
String name = "john";
StringTest obj = new StringTest(name);
name = "peter";
System.out.println(obj.name);
}
} class StringTest{
Strin