メタタイプとして登録したい QObject のサブクラスであるクラスがあります。QObjectのドキュメント には、コピー コンストラクターは非公開にする必要があると記載されていますが、QMetaType のドキュメントには、型にはパブリックのデフォルト コンストラクター、パブリックのコピー コンストラクター、およびパブリックのデストラクタが必要であると記載されています。
QObject のプライベート コピー コンストラクターをオーバーライドして、パブリック コピー コンストラクターを宣言できますが、これは安全ですか?
class MyClass : public QObject {
Q_OBJECT
public:
MyClass();
MyClass(const MyClass &other);
~MyClass();
}
Q_DECLARE_METATYPE(MyClass);