关于C++类对象被析构的问题

我定义了一个名为Node的类,用于记录每一组数据,又定义了一个名为Collection的类,用于组织每一组数据,其中使用ins()函数插入Node类对象。但是如果使用下面... 我定义了一个名为Node的类,用于记录每一组数据,又定义了一个名为Collection的类,用于组织每一组数据,其中使用ins()函数插入Node类对象。但是如果使用下面的代码,插入Node类对象之后马上就会被析构掉,有没有什么办法能让插入的数据一直保留直到手动删除呢?

/*使用Node.h文件定义Node类*/

class Node
{
private:
unsigned char data;
unsigned long value;
public:
Node(unsigned char data, unsigned long value)/*构造函数*/
{
this->data=data;
this->value=value;
}
}

/*Node.h文件结束*/

/*使用Collection.h文件定义Node类对象的集合*/

#include<vector>
#include"Node.h"
using std::vector;
class Collection
{
private:
vector<Node> v;
public:
void ins(unsigned char data, unsigned long value)/*尝试将新数据压入vector中*/
{
Node newNode(data,value);
v.push_back(newNode);
}
void show()
{
/*将v中的元素依次输出,此处省略代码*/
}
}

/*Collection.h文件结束*/

/*main.cpp文件开始*/

#include"Collection.h"
int main(void)
{
Collection c;
c.ins('a',1);
c.ins('b',2);
c.ins('c',3);
c.show();/*此处输出的是析构后的无效数据*/
return 0;
}

/*main.cpp文件结束*/
展开
 我来答
風过梧桐
2016-12-17
知道答主
回答量:5
采纳率:0%
帮助的人:11万
展开全部
代码没有问题,是其它地方导致问题产生。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式