我试图与已经被拷贝构造改性的新对象设定我在Object2的向量位置1。矢量对象,使用setElementAt /设置
Generic object1 = new Generic();
//invoke the copy constructor of the Generic class
Generic object2 = new Generic(object1);
Vector<Generic> myVector = new Vector<Generic>();
myVector.add(object1);
myVector.add(object2);
此代码的工作,当我使用它,我输入的数据为object1后,对象2得到了相同的数据
object2= new Generic(object1);
myVector.setElementAt(object2, 1);
不过,我想下面的代码应与上述相同,但它确实不会给我与object1相同的数据(只是获取object1的默认值)
myVector.setElementAt(new Generic(object1), 1);
第二个问题怎么解决?
你是什么意思“获得尽可能object1相同的价值观”和“第二个不工作”是什么意思?假设'new Generic(object1)'是一个无状态的构造函数,那么这两个代码片段应该是相同的(模仿将一个值赋给'object2'的副作用)。 –
请提供更多代码。有没有隐式投射? – emesx
对不起人人,添加了更多代码 – Dog