-1

C++ コンパイラが特定の事柄をどのように処理するのか疑問に思っていました:
まず、どの C++ コンパイラを使用しているかを調べる方法は? (gcc? gnu? または何か...)
では、Windows GUI をプログラミングしているときに、コンパイラはどのようにコンソール ウィンドウを非表示にしますか?
(またはコードでコンソールを非表示にしていますか?)
また、コンパイル時に dll を含めるにはどうすればよいですか?
また、コンパイラに関する他のすべてを学ぶことができる場所はありますか?

編集:@StuartGolodetz私は実際にはminGWを持っていると思います(私はDevCppを使用しています)。コンソール ウィンドウを非表示にする方法や dll を含める方法を尋ねたときに私が意味したのは、使用している IDE でそれを設定する方法ではなく、コマンド ラインでどのように行うのですか?

4

1 に答える 1

3

システムに多くの異なるコンパイラがある可能性があるため、答えるのが難しい質問です。実際には、どれを使用しているかの問題です:)とはいえ、gcc/g++はUNIXベースのシステムでVisual C++一般的なコンパイラであり、 Windows - これらのいずれかを使用する可能性は十分にあります。

UNIX ベースのシステムを使用していて、 を持っているかどうかを知りたい場合はg++、次のようにします。

which g++

バージョンを確認するには (持っている場合)、次のようにします。

g++ --version

Windows GUI をプログラミングしているときに Visual C++ がコンソール ウィンドウを非表示にするという点では、プロジェクト設定でサブシステムを Windows に設定している場合は表示されません。


コンパイル時に DLL を含めず、DLL に.lib対応するファイルにリンクしてから、実行時にそれらが見つかることを確認します。コンパイルとリンクの (重要な) 違いに注意してください。これは合理的なリンクのようです:

http://edmulroy.portbridge.com/oview.htm


コンパイラが Visual C++ であると仮定すると (そのように聞こえます)、MSDN を読むだけで済みます。


編集:

新しい質問への回答については、こちらをご覧ください。

Windowsでコンソールウィンドウを開くMingw(g ++)を停止する方法

再。DLL を含めないでください - を使用して DLL のインポート ライブラリにリンクし-l<libname>、DLL 自体が実行可能ファイルと同じディレクトリにあるか、実行時にシステム パスにあることを確認します。

于 2012-05-12T14:29:21.127 に答える