C 在堆栈上对对象(节点)做出一系列指针
C++ Making an array of pointers to objects(nodes) on Stack
我试图将((添加到我的节点中,我注意到当我尝试在_nodes阵列上访问"节点"时,它没有保留构造的值,例如喜欢ID。它应该是1,并且正在打印4198441。这是初始化数组的正确方法,以便它的每个位置都指向一个特定的节点?(我不能使用"新"关键字或"列表"answers"向量"库。(
这就是我为节点创建一系列指针的方式。数组的每个位置_nodes [x]都被认为是通往节点的指针。
//array
Node* _nodes[];
//Constructor
for(int i=0;i<N;i++){
Node node(i); //i is the id of the future node.
_nodes[i] = &node;
}
void addEdge(int a,int b){
std::cout<<"The id of the node stored in a is:" << _nodes[a]->getId();
...
}
此代码属于一个名为Graph的独立类。
_nodes[i] = &node;
此行存储一个指向本地对象的指针。一旦您的功能返回,指针就会在对象被破坏时指向无效的内存位置。
您可以使用_nodes[i] = new Node(i);
(并删除本地对象(,但是一旦完成该内存,您就必须管理并删除它。
相关文章:
- 使用指针遍历一系列基元类型声明?
- 为什么要为指针返回类型返回一系列字符?
- 如何计算一系列指针的内容长度
- 优化调用一系列功能指针
- 使用一系列指针对计算机来操纵指向(C )的指针
- C 在堆栈上对对象(节点)做出一系列指针
- 指针的一系列指针:管理不同语言的字符串
- 如何将内存分配给一系列指针为结构
- 将指针或一系列指针存储在动态阵列中
- 将一系列指针传递到类对象
- 存储在存储在堆栈中的堆与矩阵中的矩阵可以看作是一系列指针
- 如何将一系列指针分配给Usinig New
- 对需要变量传递的对象使用一系列指针
- 这是否会导致一系列指针
- 一系列指针存储地址并以后打印
- 向一系列指针及其替代方案的动态分配
- 将一系列指针分配给C 中的私人变量
- 一系列指针和指针指向一系列指针
- C 指针指向一系列指针(带有LinkedList碰撞处理的Hashtable)
- 一系列指针到会员的定义与变异模板结合使用