こんにちは皆さん、私はfooクラスを持っています
foo.h のコード
namespace GUI
{
class Foo : public QObject
{
Q_OBJECT
public:
explicit Foo(QObject *parent = 0);
virtual ~Foo();
....
};
}
これで問題なく動作し、コンパイルできますが、QSettings を使用してこのカスタム C++ クラスを保存したいのですが、ステップの 1 つはクラスを登録することですQ_DECLARE_METATYPE
したがって、この行
Q_DECLARE_METATYPE(Foo)
を foo.h ファイルの最後に配置するとすぐに、これらのコンパイラ エラーが発生します C2248:'QObject::Qobject':cannot access private member defined in class 'QObject' をクリックすると、私のconnection.hヘッダーファイルの最後の行で、何が間違っているかについての他の情報を提供しません。つまり、エラーは私を指摘します
Class Foo
{
};<---- point me here
Q_DECLARE_METATYPE(Foo)
QObject をコピーできないことは知っていますが、これはそれに関連していますが、ここで何が間違っているのか、どうすれば修正できるのかわかりません。前もって感謝します