1) 在工程中返回一个类的复杂的结构。为了直接操作 返回类型如下:
vector<SomeClass *> & someClass::someFunction();
但是需要提供外界修 ,例如:
vector<SomeClass *> myValue = someClass' instance::someFunction();
于是,悲剧产生了。
修改的都是拷贝构造下来的变量。我的本意是修改这个变量中数值,最可悲的是我里面有删除条目的操作,导致明明我想要的工作和实际情况不符合。
由于牵涉的代码太多,一时竟然没有发现这个地方有问题。
正确的用法是 vector<SomeClass *>& myValue = someClass' instance::someFunction();
鄙视一下自己
2)有父类和子类,当调用子类的拷贝构造函数时候,而没指定父类的拷贝构造函数的时候,系统自动调用的是父类的默认构造函数,而不是父类的拷贝构造函数。
这稍稍违反了我的想法。