私はこのテーマに関するドキュメントを見つけることができないので、独自のコア基盤 "クラス"を作成することは可能ですか? (CFRetain()とCFReleaseで使用できるクラスのようなクラス)Objective-Cのオーバーヘッドや独自のオブジェクト階層を作成することなく、Core Foundationに組み込まれた多相機能とオブジェクト検査を利用したいと思います。コア基盤クラスの作成
5
A
答えて
4
ご注意:私は、Objective-Cがロードされていない場合、Core Foundationには真の継承がないと考えています。Objective-Cをロードすると、とにかくマイナーな関連の減速が発生します。
おそらくドキュメントはありませんが、可能性があります。それは確かにきれいではありません。 CF-Lite source code(リンクはMac OS X 10.5.7)を見て、フレームワークの実装の感触を試してみてください。
Objective-Cのオーバーヘッドがメッセージの呼び出しのオーバーヘッドである場合、それを最適化する方法はたくさんあります(たとえば、-instanceMethodForSelector:
メソッド)。 Objective-Cコードを最適化して高速化するよりも、Core Foundationフレームワークへの道を拓くために、より多くの時間を費やす可能性が非常に高いです。
0
技術的には、Core Foundationクラスはありません。それらは不透明な型です。
関連する問題
- 1. 基盤6コアjsエラー
- 2. Windowsワークフローの基盤を作成する
- 3. 基盤グリッドレイアウト
- 4. ブランチの基盤へのコミット
- 5. coreclrのワークフロー基盤のサポート
- 6. チーム基盤サーバーのコード行
- 7. のWindowsアイデンティティ基盤(WIF) - ClaimsAuthenticationManager
- 8. オープンソースのマルチウェイ基盤ツリー
- 9. Azureストレージの基盤技術
- 10. 基盤の選択ボックスオプションイベント
- 11. ソフトウェア基盤自動グレーディング
- 12. プログラム的な基盤6 offCanvas
- 13. チーム基盤サーバー複数ユーザー
- 14. Windowsワークフロー基盤のヒューマンベースのタスク
- 15. wpfスタイルの基盤を背後のコード
- 16. チーム基盤サーバー2012のSVN外部オプション
- 17. Internet Explorer 8用の基盤4グリッドサポート
- 18. チーム基盤サーバーのバグ追跡ツール
- 19. 迅速な火災基盤の例
- 20. チーム基盤サーバー - レビューコメントの取得
- 21. 複数のドメインのクラス間の通信が同じ基盤のDBテーブル
- 22. 基底クラスとインタフェースを作成
- 23. 基盤ブロックグリッドが小さく動作しません
- 24. Pythonクラス:基本クラスのメソッドでの変数サブクラスの作成
- 25. チーム基盤サーバー、SQL Server Management Studio
- 26. 基盤フレームワーク。いいえNSString.hファイル
- 27. チェス盤外の隣接グラフの作成(ダイクストラ用)
- 28. npm ERRで基盤プロジェクトの作成が失敗します! debianのgit rev-list 8.5.0
- 29. 電子メールの基盤はプロダクション用にコンパイルされません - SCSSフォルダは作成されていません
- 30. asp.netコアのDatatableクラス
ありがとうございました。私はCF-liteパッケージを見ましたが、ドキュメント化されていない/プライベートな関数を使わずに独自のCFタイプを作ることは基本的に不可能です:( 私は良いol 'Obj-CとIMPキャッシングを使用するように見えます。 –
本当に必要な場合は、 'IMP'キャッシングと直接ivarアクセスを介してObjective-Cオブジェクト用のスタティックCスタイルのラッパーを書くことができます... heck、私は、GC以外の環境でも独自の割り当てをロールすることができます。 –