私はC/C++を使ってアプリケーションをコーディングしたいと思っていますが、すべてのバージョンのWindows(XPからWin8)、独自のプラットフォーム、ランタイムライブラリなどで動作させる必要があります。すべてのタイプのOSでC++アプリケーションを実行できますか?
簡潔に:どのような種類のC/C++を使用すると、追加のインストールをせずにすべてのタイプのWindowsでアプリケーションを実行できます。デフォルトのものだけです。 Windows XP SP1
私はC/C++を使ってアプリケーションをコーディングしたいと思っていますが、すべてのバージョンのWindows(XPからWin8)、独自のプラットフォーム、ランタイムライブラリなどで動作させる必要があります。すべてのタイプのOSでC++アプリケーションを実行できますか?
簡潔に:どのような種類のC/C++を使用すると、追加のインストールをせずにすべてのタイプのWindowsでアプリケーションを実行できます。デフォルトのものだけです。 Windows XP SP1
C++は、1つのOSまたはバージョンに固有のものを回避する(条件付きコンパイルでは、代替手段を提供する)限り、ほぼすべてのOSで実行できます。 Win32コードはバージョン間でほぼ同じです。主な違いは、新しいバージョンで追加された機能です。しかし、WindowsとLinuxの間では?そうではありません。あなたは、OpenGL、wxWidgets、GTKなどのような、他のプラットフォームに依存しないAPIの一部を学ぶか、テキストモードに固執しない限り、プラットフォームを選ぶ必要があります。
どのコンパイラを使用するかは、Windowsを使用している場合はVisual Studioをお勧めします。 Microsoftには、Win32コードまたは.netをコンパイルできる無料の(Express)エディションがあります。 (ただし、有料版、またはPlatform SDKで遊ぶためには、64ビット版でプレイする必要があります)。また、IDEもそれほど悪くないわけではありません。コンパイラがほしいのであれば、Platform SDKにはVSと同じコンパイラがあり、64ビットのサポート(さらにコードサンプルとツールの束)も含まれています。
ランタイムライブラリとは独立しています:使用する価値があるすべてのC++コンパイラにはランタイムライブラリがあります。静的にリンクすると、必要な部分はEXEに埋め込まれます。別の方法として、アプリケーションでランタイムライブラリを配布する権限を持っています(提供するパッケージを介してインストールする必要があるかもしれませんが、アプリケーションと一緒にバンドルする必要があります)。
すべての一般的なC++コンパイラは、XPをサポートしています。ランタイムを静的にリンクすることも、mingwではWindowsに付属のランタイムにリンクすることもできます。