私はC++での経験が限られているダイハードの.NET開発者です。私は実際に幸せに解釈される言語(およびスクリプト言語)がクロスプラットフォームで動作する方法に精通していますが、C++についてはどうでしょうか?クロスプラットフォームのC++ツールチェーン
私は、GCC/GPPと他のコンパイラが正しいコンパイラフラグを使ってマルチプラットフォームで動作することを認識していますが、コンパイラ間でSTLが正規化されていることを理解しています。オーディオイン/アウト、高精度タイマーが必要です。マルチスレッドが必要です。私はこれらのことのどれもがSTLでサポートされているとは思わないので、いくつかのタイプのクロスプラットフォームライブラリが必要でしょうか?どちらを使うべきですか?
私は、最新のMacとWindowsプラットフォームをサポートすることを目指しています。これは共有フレームワーク/ SDKであり、UIはありません。 Objective-C/Cocoaや.NET/WPF(いずれも優れたネイティブUIサポートを備えています)などのネイティブ言語でUIを作成する予定です。
私のツールチェーンはどのように見えますか?私はGCC/GPPまたはMinGWを使用すべきですか?クロスプラットフォームで機能する他の「ライブラリ」をどのように統合する必要がありますか?私はMac互換のバイナリとWindows互換のバイナリ(32ビットと64ビット)をビルドできるようにビルド環境を「うまく動作する」ようにセットアップしたいと思います。どうやってやるの?
この時点で、私はこのC++マルチプラットフォームフレームワークsdk/api thingyと相互運用できるように、各プラットフォームのコードを記述します。ウィンドウズでは、これは管理されたDLLのように見えますが、それは正しいのでしょうか? Macでこれをどうやってやろうと思っていますか?
提案やおすすめはありますか?提案のため
おかげで、 ブレット
最近の十分なコンパイラ(C++ 11の新機能)を使用すると、STLでのスレッド化がサポートされます。 GCC 4.6とMSVCはそれをサポートしています。 –
@ J.N。はい、clang/libC++は 'std :: thread'をサポートしています。 – bames53
いつから.Net言語がネイティブですか? (C++/CLI以外)これを試す前に、 "ネイティブ"の定義をクリアし、それがC++やクロスプラットフォームにどのように関係しているのか(そしてコンパイラがクロスプラットフォームではない方法)が役に立ちます。 – ssube