gpt4 book ai didi

c++ - 尝试访问 vector 条目时出现分段冲突

转载 作者:行者123 更新时间:2023-11-28 02:36:20 25 4
gpt4 key购买 nike

我创建了一个类,比如我将其命名为 MyClass,以及另一个继承自它的类,比如 MyClassDaughter 然后我尝试了以下操作:

MyClassDaughter *MyClassDaughterPointer;
vector <MyClass*> MyClassVector;
MyClassVector.push_back(MyClassDaughterPointer);
MyClassVector[0]->SetSomethingInMyClassDaughter;

当我尝试运行可执行文件时,它显示“Segmentation Violation”。(我想必须说我的代码中有一些 Root 的东西......这可能是问题所在吗?无论如何,我知道,通常,分段违规错误是由于试图访问我们无权访问的内存引起的,但我认为我确实有权访问此内存。我错了吗?)

最佳答案

您没有初始化 MyClassDaughterPointer,因此您将一些随机(野生)指针推送到 vector 。

您需要创建 MyClassDaughterPointer 的新实例。假设您有一个默认构造函数,它将如下所示:

MyClassDaughter *MyClassDaughterPointer = new MyClassDaughterPointer();

关于c++ - 尝试访问 vector 条目时出现分段冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27303869/

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