不能调用成员函数' Image * Source :: GetOutput()'没有对象,不能使它静止

时间:2014-05-23 11:00:03

标签: c++ oop

我有一个如此定义的类:

// source.C

#include "source.h"

Image* Source::GetOutput()
{
    return this->img;
}




// source.h

#include "image.h"

#ifndef SOURCE_H
#define SOURCE_H

class Source
{
    private:
        Image* img;
    public:
        Image* GetOutput(); 
        virtual void Execute()=0;
};
#endif

我需要在Image img = *Sink::GetOutput();的子类中调用Source或类似的东西。但是,这会引发错误cannot call member function ‘Image* Source::GetOutput()’ without object。我知道我可以使GetOutput()静态来摆脱这个错误,但之后我将无法再返回this->img;。有什么办法可以修改这段代码以达到预期的目的吗?

0 个答案:

没有答案