QLabelを関数から返そうとしていますが、エラー:エラー: '((const MyClass *)this) - > MyClass :: myLabel'から 'QLabel * const'を 'QLabel'に変更する
/media/root/5431214957EBF5D7/projects/c/qt/tools/plugandpaint/plugins/extrafilters/extrafiltersplugin.cpp:17: error: could not convert ‘((const ExtraFiltersPlugin*)this)->ExtraFiltersPlugin::retLabel’ from ‘QLabel* const’ to ‘QLabel’
^~~~~~~~
extrafiltersplugin.h
#ifndef EXTRAFILTERSPLUGIN_H
#define EXTRAFILTERSPLUGIN_H
#include <interfaces.h>
#include <QObject>
#include <QtPlugin>
#include <QImage>
#include <QLabel>
class ExtraFiltersPlugin :
public QObject,
public FilterInterface,
public RevViewsInterface
{
Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.Examples.PlugAndPaint.FilterInterface" FILE "extrafilters.json")
Q_INTERFACES(FilterInterface RevViewsInterface)
public:
ExtraFiltersPlugin();
// RevInterface
QLabel label() const override;
private:
QLabel *retLabel;
};
#endif
extrafiltersplugin.cpp
#include <QtWidgets>
#include <stdlib.h>
#include "extrafiltersplugin.h"
ExtraFiltersPlugin::ExtraFiltersPlugin() {
retLabel = new QLabel();
retLabel->setFrameStyle(QFrame::Panel | QFrame::Sunken);
retLabel->setText("first line\nsecond line");
retLabel->setAlignment(Qt::AlignBottom | Qt::AlignRight);
}
QLabel ExtraFiltersPlugin::label() const
{
return retLabel;
}
私が間違っているか紛失している可能性がありますか?これが完全に明らかであれば、私はC + +/Qt初心者です。
ありがとうございます。
ポインタでないオブジェクトを返す関数からポインタ 'retLabel'を返そうとしています。 –
これはすでに@ some-programmer-dudeのコメントで、以前の投稿に返答しましたhttp://stackoverflow.com/questions/42049893/error-label-was-not-declared-in-this-scope –