0

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名前空間を使用するにはどうすればよいですか?

4

1 に答える 1