程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何将节点保存到数组中大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决如何将节点保存到数组中?

开发过程中遇到如何将节点保存到数组中的问题如何解决?下面主要结合日常开发的经验,给出你关于如何将节点保存到数组中的解决方法建议,希望对你解决如何将节点保存到数组中有所启发或帮助;

我想用一个数组来存储节点,然后当我需要使用部分数据时,我可以使用Get函数来提取数据(比如打印),但是当我运行它时,却显示

>

分段错误(核心转储)

问题出在哪里?

///node.h
class Node{
 public:
  Node();
  Node(String type,String address);
  String GetType();
  String GetAdd();

 private:
  String m_type;
  String m_address;
};

#endif
///node.cpp
Node::Node(){
  m_type = "";
  m_address = "";
}


Node::Node(String type,String address){
  m_type = type;
  m_address = address;
}


String Node::GetType(){
  return m_type;
}


String Node::GetAdd(){
  return m_address;
}
/////main
int main(){
  Node* arr;
  int num_arr = 0;
  String type = "n";
  String address = "003";
  Node* newNode = new Node(type,address);
  arr[num_arr] = *newNode;
  cout << arr[0].GetType() << endl;
}

解决方法

您必须在访问其元素之前分配数组。

/////main
int main(){
  Node* arr = new Node[10]; // allocate 10 elements
  int num_arr = 0;
  String type = "n";
  String address = "003";
  Node* newNode = new Node(type,address);
  arr[num_arr] = *newNode;
  cout << arr[0].GetType() << endl;
}

大佬总结

以上是大佬教程为你收集整理的如何将节点保存到数组中全部内容,希望文章能够帮你解决如何将节点保存到数组中所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: