gpt4 book ai didi

c++ - vector.push_back() 正在覆盖 front() 指向的值

转载 作者:行者123 更新时间:2023-11-28 03:07:28 27 4
gpt4 key购买 nike

代码在 pastebin 上:http://pastebin.com/UknqKvMq

因此,我正在排列 0、1、2、3、4、5、6、7、8、9 的所有可能排列(即形成 10 位数字)。我通过调用将每个排列存储在堆上

new int[10]

我将返回的指针推到一个

static vector<int*>

现在,当我将指针推到 vector 上时,第一项指向的数据正在被修改(可能还有 vector 指向的所有其他项)。我在代码中有许多打印语句显示了这一点,调用 sleep() 来减慢进程。为什么会这样?

最佳答案

您调用 Permute,它将指针 inputCopy->arrangement 插入您的静态 vector 。然后立即将其删除。这意味着您的 vector 包含悬挂指针。

关于c++ - vector<int*>.push_back() 正在覆盖 front() 指向的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19344323/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com