简单分段故障Proglem

时间:2015-09-04 20:19:31

标签: c++ fault

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

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

3 个答案:

答案 0 :(得分:2)

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

像这样:

PNG *original = new PNG();

答案 1 :(得分:1)

您在没有先为其分配任何内容的情况下取消引用original

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

答案 2 :(得分:0)

也许您不需要使用指针

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

尽管有些新手似乎认为指针不是强制性的。