gpt4 book ai didi

c++ - vector push_back 错误

转载 作者:行者123 更新时间:2023-11-30 04:26:53 24 4
gpt4 key购买 nike

原来是这样

我有课

Class L_FullQuote
{
private:
vector<int> time;
..
}

Class B
{

L_FullQuote *Symbols[100];

void handle message()

}

内部句柄消息我有这个声明

Symbols[i]->time.push_back(2);

代码构建良好..但是当我使用生成的 dll 时。应用程序崩溃了。有时它会把我带到 vector 中的 nxt 指针错误。但大多数情况下整个应用程序都崩溃了。没有那条线也能正常工作。

请帮忙

谢谢

最佳答案

您已经在使用 vector,为什么不更进一步呢?使用 std::vector 可以让您专注于编写您的功能,而不用担心内存管理。

此示例与您最初发布的内容略有不同。您的原始问题类 B 有一个包含 100 个指针的数组,每个指针都必须初始化。在下面的示例中,我们创建了 L_FullQuote 对象的 std::vector,在构造函数中初始大小为 100 个对象。

class L_FullQuote
{
public:
vector<int> time;
};

class B
{
public:
// Initialize Symbols with 100 L_FullQuote objects
B() : Symbols(100)
{
}

std::vector<L_FullQuote> Symbols;

void handle_message()
{
Symbols[i].time.push_back(2);
// other stuff...
}

};

关于c++ - vector push_back 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11250644/

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