创建对象时出现分割错误

Segmentation fault when creating object

本文关键字:分割 错误 创建对象      更新时间:2023-10-16

我有一个在指针上创建对象的问题。

include <iostream>
class foo
{
int bar;
};
class List
{
public:
  class foo * foo;
  class List * next;
};
main()
{
  class List * Head;
  Head->foo = new foo;
  return 0;
};

在Head程序上创建新的foo()后遇到分段错误。有人能帮我一下吗?

main做成这样:

main()
{
    class List * Head = new List; //this line is modified
    Head->foo = new foo;
    return 0;
};

错误是因为您声明Head为指向类List的对象的指针,但您没有分配它(例如使用new)。