【发布时间】:2013-03-08 20:23:56
【问题描述】:
我有一个类对象的向量。一个函数随机选择两个元素并返回它们的地址。
现在使用这两个元素,我想生成两个相同类的新对象,并使用 push_back 将它们添加到向量中。
这里是两个父元素的地址:
这里没问题。然后生成第一个子对象,我使用 vector_pushback 将其添加到向量的末尾。问题是,在执行 push_back 命令后,父对象的地址似乎发生了变化。 push_back 后调试器的状态如下:
如您所见,地址显然保持不变,但似乎它们指向 push_back 之后的垃圾值。据我了解, push_back 在向量的末尾添加了一个元素。因此,我希望这 2 个元素的地址根本不会改变。
怎么了?
【问题讨论】:
标签: c++ vector memory-address push-back