作り、どのようにあなたは(私はC/C++
ないJava
またはC#
に意味) 誰もが、それは自分のスープです作るの一種である携帯コードを作成することができます強力な標準はまだありません来ます。
Apache Portable Runtime
のような第三者のライブラリさえあります。ポータブルコードのオープンソースプロジェクトに関するすべての大騒ぎで
答えて
誰もが同意している単一の図書館がない主な理由は、誰もが必要としているということです。システムライブラリをラップしたいときには、ラッパーを扱うのが巨大で不可能にならないようにしたい場合を除き、ユースケースが何であるかについていくつかの仮定をしなければならないことがよくあります。私はこれが単一の共通のクロスプラットフォームランタイムがない主な理由かもしれないと思います。
GUIの場合、各プラットフォームに独自のUI規則があり、すべてに適合する1つのGUIをコーディングすることはできません。
はい、そこには標準ではありませんが、あなたは、クロスプラットフォームの開発を行う際にQtのとブーストのようなライブラリは、あなたの人生ははるかに簡単に行うことができます。
クロスプラットフォーム開発を自分で簡単に行うためのライブラリはたくさんありますが、すべてのプラットフォーム用の完全なラッパーを作ることは、小さくて高度にカスタマイズされているか、大量で完全にばかげています。
論理的には、オペレーティングシステムのすべての側面の完全なラッパーが仮想ランタイム全体になります。独自のプログラミング言語を作成することもできます。
The ADAPTIVE Communication Environment (ACE)は、スレッディング、ソケット、ミューテックスなどの低レベルOS機能のすべてに対してクロスプラットフォームサポートを提供する優れたオブジェクト指向のフレームワークです。狂った数のコンパイラとオペレーティングシステムで動作します。
GCCとMS VC++の両方で正常にコンパイルされていることを確認したら、他の場所に移植するのに少しでも手間がかかります。
wxwidgetsは、ほとんどのウィンドウマネージャーのネイティブGUIウィジェットの素晴らしい抽象レイヤーです。
言語としてのCおよびC++は、標準言語です。コーディング時にルールに厳密に従うならば(つまり、ベンダー固有の拡張機能を使用しないことを意味します)、コードは移植可能でなければならず、どのOS上の最新のコンパイラでもコンパイルできるはずです。
しかし、CやC++にはJavaやC#のようなGUIライブラリがありませんが、移植性のあるGUIアプリケーションを作成するための無料または市販のGUIライブラリがあります。
私は最も人気があると思うQt(商業)とwxWidgets(フォス)です。 wikipediaによれば、もっと多くのことがあります。
また、GUIライブラリではありませんが、boostはC++のSTLを補完するものです。実際、ブースト・ライブラリのいくつかは、次のC++標準で追加される予定です。
- 1. 騒ぎネットデータサービスBeginExecute問題
- 2. SendKeysが数字ロックに騒ぎを起こす
- 3. オープンソースプロジェクトに関する異なるデータレコード
- 4. Visual C++で書かれた最大のオープンソースプロジェクトは何ですか?
- 5. 軸のラベルが重なりすぎて大きすぎます
- 6. オープンソースプロジェクトにカスタムカテゴリを含めるべきですか?
- 7. 値が大きすぎるか小さすぎてInt32 - Facebook&dotnetopenauth
- 8. Int16の値が大きすぎるか小さすぎます
- 9. Nerdの夕食、おそらく極端な騒ぎの質問、リストの夕食
- 10. オープンソースプロジェクトに変更を提出するための税関?
- 11. Spark Rowオブジェクトが同等の構造体に比べて大きすぎるのはなぜですか?
- 12. 表が大きすぎる
- 13. (「オブジェクトヘッダメッセージが大きすぎる」)
- 14. 大きすぎるファイルサイズbrowserify +
- 15. スプリングブートエンティティ(大きすぎるオブジェクト)
- 16. すべての大文字を削除するC関数
- 17. 誰がオープンソースプロジェクトのプラグインリポジトリを所有するべきか
- 18. StackOverFlowException:MS TextBoxのint 32に値が小さすぎるか大きすぎます
- 19. 大きすぎるテキストと幅のAlertDialog
- 20. iPhone 4のフォントサイズが大きすぎる
- 21. NodeJS /エクスプレスリクエストエンティティが大きすぎる - Herokuの
- 22. jqplotのバー幅が大きすぎる
- 23. winformsのウィンドウが大きすぎる
- 24. ブートストラップのブランドイメージが大きすぎる
- 25. Pythonの:グリッドサイズが大きすぎる
- 26. モバイルで大きすぎるブートストラップカルーセル画像
- 27. Outlookで大きすぎるフォント
- 28. Django - セッションに大きすぎるデータ
- 29. React-NativeのAndroidフォルダと比べてIOSフォルダが大きすぎるのはなぜですか?
- 30. UIPopoverControllerが大きすぎるとUIPickerViewが小さすぎる
GCCとMSVCを使用してWindows上に何かを構築すると、それ以外の場所でも動作するという保証はありません:エンディアン? (インテルはリトルエンディアン、その他はビッグエンディアン)整数/ポインタサイズ? (16/32/64はすべて共通です)API? (LinuxとUNIXにはWINAPIがありません...)そして私は他の例を見つけることができると確信しています。私は、IBM z/OS上でMSVCプログラムを構築することは非常に「面白い」ことができると確信しています... –