C++向列表添加新的指针对象
C++ Adding new pointer objects to List
我在这里定义了一个数据结构,称为:
typedef list <classSpec*> ClassSpecList;
我试图根据返回与相同数据类型匹配的某些值的函数将内容添加到列表中。在一个函数中,我在这里定义了一个列表指针对象,还有另一个调用函数的语句。
ClassSpecList *answer = 0;
classSpec *thisanswer = parseClass(br);
基本上,我试图将thisanswer
返回的结果添加到我的主ClassSpecList
中。问题是,当我尝试时
answer->push_back(new classSpec (*thisanswer));
它编译了,但我得到了一个seg错误
当我尝试其他东西时,比如:
answer->insert(ClassSpecList.begin(), *thisanswer);
我不断地得到主要的表达错误,我不知道为什么。我甚至在没有typedef
的其他列表中尝试过,但我仍然得到了这些。
谢谢。
您应该首先初始化指针answer
,如:
ClassSpecList *answer = new ClassSpecList;
则可以将CCD_ 5添加到此列表中。
这应该有效:
ClassSpecList *answer = new ClassSpecList;
answer->push_back(thisAnswer);
通常推荐的是:
ClassSpecList answer;
answer.push_back(thisAnswer);
如果可能的话,parseClass
不应该返回指针,而应该使用typedef list <classSpec> ClassSpecList;
。
相关文章:
- 为什么指针对象没有调用默认构造函数
- 如何访问双指针对象中的方法
- 如何使用智能指针对象执行成员函数指针
- 调用带有指针对象错误的指针变量
- 如何从模板类重载创建的指针对象上的运算符?
- C++指针对象的运算符重载
- 如何初始化数组指针对象
- 如何打印出唯一指针对象向量中的值(基于范围的循环)?C++
- C++指针对象差异
- 涉及继承,指针对象的交易以及何时进行的问题
- 表达式必须在C 中具有指针对象类型
- 下标需要数组或指针类型表达式必须具有指针对象类型
- 字符指针对象和相应的字符数组元素比较
- 如何在 c++ 中克隆为弱指针对象
- 指针对象使用CPP中的指针表达式进行比较
- Visual Studio中智能指针对象的自定义视图
- 使用指针 /对象 /模板参数正确构成
- 如果我确定只有一个线程一次处理指针/对象,则C/C 仍应使用同步
- 如何将值分配给指针对象 c++
- 更改智能指针对象,然后访问它