C++ 简单分段故障程序

C++ 简单分段故障程序,c++,fault,C++,Fault,我在这段代码中遇到了一个分段错误。我做错了什么?您取消了对原始文件的引用,而没有首先为其分配任何内容 您已将其声明为PNG*,但未将对象实例分配给该指针。您必须分配内存,因为original它只是一个指针 像这样: PNG * original; original->readFromFile("in.png"); int width = original->width(); int height = original->height();

我在这段代码中遇到了一个分段错误。我做错了什么?

您取消了对原始文件的引用,而没有首先为其分配任何内容


您已将其声明为
PNG*
,但未将对象实例分配给该指针。

您必须分配内存,因为
original
它只是一个指针

像这样:

    PNG * original;
    original->readFromFile("in.png");
    int width  = original->width(); 
    int height = original->height();

也许您不需要使用指针

PNG *original = new PNG();

尽管有些新手似乎认为指针不是必须的。

你有没有初始化过
PNG*original
?否则,取消引用它将是未定义的。-1'因为你真的可以在这一点上更努力一点。在你寻求帮助之前,至少试着解决你的问题。
PNG original;
original.readFromFile("in.png");
int width  = original.width(); 
int height = original.height();