A
から派生した基本クラスを継承するクラスの新しいインスタンスを作成したいと考えていますQObject
。
A
名前空間にない場合、これは正常に機能しますA
が、名前空間にある場合、この呼び出しは null ポインターを返します。
QObject *o = metaObject->newInstance(arg1,arg2,arg3);
それmetaObject
自体が正しいクラス名を返します (名前空間を含む)
std::cout << "Class name from staticMetaObject: " << metaObject->className() << std::endl;
のコンストラクタはA
でマークされていQ_INVOKABLE
ます。QMetaObject::newInstance
名前空間を使用するにはどうすればよいですか?