Qtで文書化されていないQObjectUserData
クラスとQObject::setUserData
クラスを使用しても安全ですか?Qtでの文書化されていないクラスの使用について
9
A
答えて
15
代わりにQObject::setProperty
を使用すると、コンパイル時に宣言されたプロパティだけでなく、使用する前に宣言する必要のない動的プロパティも設定できます。これにより、ユーザーデータと同様に、実行時にQObjectに任意の値を添付することができます。
9
一般に、文書化されていないAPIに頼るべきではありません。 Qtのアップグレードを計画しているなら、それを使用しないでください!
4
通常、文書化されていないクラスは内部クラスであり、Qt APIの一部ではありません。つまり、次のQtバージョンでAPIが変更されない、またはクラスが完全に削除されるという保証はありません。だから、
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists for the convenience
// of qapplication_*.cpp, qwidget*.cpp and qfiledialog.cpp. This header
// file may change from version to version without notice, or even be removed.
//
// We mean it.
あなたは内部APIを使用している場合、あなた自身にしているし、次のQtのバージョンに切り替える際、あなたがやっていたものは何でも再実装/修正する必要がある場合があります。たとえば、qobject_p.hは、次の警告が含まれています。
関連する問題
- 1. 文書化されていないメンバー
- 2. 文書化されていないiPhone SDKの機能を使用していますか?私のアプリで
- 3. 文書化されていないOpen Graphコールのステータス?
- 4. VS2010ソリューションで文書化されていないコードメンバーを見つける
- 5. 文書化されていないString.compareTo(ヌル)NPE?
- 6. 文書化されていない関数パラメータを表示
- 7. 文書化されていない既存のプロジェクトでの作業方法は?
- 8. Angularの文書化されていない機能は何ですか?
- 9. 同期中に文書化されていないExchange ActiveSyncのステータス
- 10. 変数はDoxygenを使用して文書化されていません
- 11. サイズ4の初期化されていない値の使用
- 12. 文書化されていないWindows組み込みのPDFレンダラ機能?
- 13. 文書化されていないJava Eclipseプロジェクトをマッピングするためのアドバイス
- 14. emberバインディングが文書化されているように動作しない
- 15. 難読化されていないAndroidでProguardを使用
- 16. "文書化されていないAPI"を使わずにUnknownPersonViewControllerのカスタムペンを作成できますか?
- 17. Swagger(ServiceStack)で正確に文書化されていない汎用型の応答オブジェクト
- 18. クラス内の初期化されていない定数メンバ
- 19. シリアル化、serialVersionUID、互換性のないクラスについて
- 20. AndroidのJavaScript環境は文書化されていますか?
- 21. Time.advanceはどこに文書化されていますか?
- 22. sun.misc.Unsafeはどこに文書化されていますか?
- 23. kSecAttrTokenIDSecureEnclaveはどこに文書化されていますか?
- 24. NSXMLはどこに文書化されていますか?
- 25. kotlin.MetaDataに保持されているデータの形式はどこに文書化されていますか?
- 26. Arduinoクラスの宣言されていない文字列
- 27. さらに初期化されていない値$ 1の使用 - Perl
- 28. NameError:初期化されていない定数 - ActiveRecordで許可されていない構文ですか?
- 29. Mathematicaのこれらの文書化されていないスタイルオプションは何をするのですか?
- 30. OOPデザイン - 保護された独自のクラスで使用されていないメンバー - だけサブクラスで使用
Qt 4.2の残骸だと思いますか?私は4.7のような新しいバージョンのQtを使うことを勧めます。あなたはそれをどうしたいのですか? –