CLI を介して動作する非常に基本的なバージョンのグラフ サーチャーがようやく完成しましたが、すべてのコードをリファクタリングする必要がある状況に陥っています。私はこのプログラミングを Mac で行っているので、GUI に Cocoa を使用し、その下に C++ 関数を主力として使用することを考えていました。最終的にはすべてのコードを Linux ボックス/クラスターで実行できるようにしたいので、これは一時的な修正にすぎません。 これが実装に関する私の最後の質問です。これはブーストで機能し、独自のグラフ関数をロールバックしました(今のところ)。
だからここに私の考えがありました:グラフ自体のC++クラスを構築し、計算したい量の関数またはメソッドを分離します。 これは、Objective-C と C++ の混合を扱う最新の説明です。しかし、私は疑問に思っていました:
Xcode での C++ コードのコンパイルは最適化されますか? 要点は、C++ コードを完全に最適化して、高速メモリ アクセス、複数スレッド、boost ライブラリへのアクセスを実現したいということです。次に、C++ クラスをラッピングする ObjectiveC クラスにカプセル化できます。これを行うには、基本的に2つのクラスが必要ですよね? .h および .cpp ファイルとインクルードされたブースト ライブラリを含む C++ クラス、次に .h および .mm ファイルを含む ObjC クラス ラッパー (.h には C++ クラスへの参照が含まれていません) .mm ファイル。次に、通常の MVC 設計と Objective C の GUI 実装を使用できます。dealloc コマンドに C++ クラスを無効にする機能を与える限り、メモリ管理について心配する必要はありませんか? ARC は C++ でもうまく機能しますか?
スレッド化が必要な場合は、ブーストスレッド化を使用すると思います.GCDのコーディングはプラットフォーム固有になるためです(ただし、今のところ、これが実行されるすべてです). テキスト ファイルを解析するだけでグラフを作成するので、今のところコア データには近づかないと思います。