gpt4 book ai didi

c++ - 帮助构造函数(pusing_back 元素到一个指向数组的指针)

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

我在将元素插入指向我在代码中定义的某些元素(在本例中为 Recipes)的 vector 中时遇到问题。在代码的其他一些部分,使用 push_back 似乎工作正常,但如果我在此代码中使用它:

{
Recipe defaultRec;
this->recipes_ = new vector<Recipe>;
this->recipes_->push_back(defaultRec);
}

我收到以下错误消息:

“分配 2.exe 中 0x01164031 处的未处理异常:0xC0000005:访问冲突读取位置 0xcccccce0”

recipes_ 的声明是:

vector<Recipe>* recipes_;

希望有人能帮助我,在此先感谢。

最佳答案

我觉得你的代码没问题。我确定问题出在其他地方。

顺便问一下,为什么要使用指向 vector 的指针?为什么不是这个:

vector<Recipe> recipes_; //member

Recipe defaultRec;
recipes_.push_back(defaultRec);

至少这样可以避免分配和释放。此外,指向 vector 的指针很可能不会比上面的更好!

关于c++ - 帮助构造函数(pusing_back 元素到一个指向数组的指针),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5399040/

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