gpt4 book ai didi

c++ - 保存数据指针

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

我有一个函数 uint32_t* getDataP(uint idx); ,我无权访问函数的代码。我需要实现一个代码,用不同的 idx 调用函数争论并将结果保存在 vector 中。将它保存在 vector<uint32_t> 中的更好方法是什么?或 vector<uint32_t*> ?如果我决定将其保存为 vector<uint32_t*> savedData ,下面的实现是否可以?:

for (uint i = 0; i < 10;++ i) {
dataP = getDataP(i);
savedData.push_back(dataP);
}

我需要执行 dataP 的深拷贝吗?或者以上就足够了?

最佳答案

如果你只保存指针,谁来负责清理,你还是库?内存是否指向在代码的整个生命周期内可用?

我会说使用 vector ,因为它更安全,但我真的不知道您的应用程序在做什么。

你的循环会变成:

for (uint i = 0; i < 10;++ i) {
dataP = getDataP(i);
savedData.push_back(*dataP);
}

关于c++ - 保存数据指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10980026/

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