0

重複の可能性
gcnew とは?
C++/CLI のキャレットは何を意味しますか?
マネージド c++ と c++ の違い

私は g++ を使用する高度な C++ プログラマーです。しかし、現在、私は Visual C++ 2005 で Windows フォーム アプリケーション プログラミングを行っています。しかし、その新しい用語では難しいと感じています。たとえば、代わりにnewそれがgcnewあり、

String ^ものの種類。^ポインターに似た とは何か説明できますか?

Visual C++ を g++ コンパイラのように通常の C++ と同じように動作させることはできますか? マネージ C++ についても聞いたことがあります。それは何ですか?

4

5 に答える 5

1

gcnew と ^ の値は、C++ とは異なる言語であるマネージ C++ です。新しいプロジェクト ウィンドウの CLR セクションからプロジェクト タイプを使用しないことで、VS2005 を通常の C++ コンパイラとして使用できます。

于 2009-10-12T11:01:51.500 に答える
1

gcnewおよび^新しい Visual C++ 構文からのものです。新しい構文は ISO/ANSI C++ 標準の一部ではありませんが、Ecma C++/CLI 標準の下で標準化された C++ の拡張セットです。あなたがしたくない場合は、それらを使用しないことができます。ここでは、Visual C++ 拡張機能について詳しく読むことができます。

于 2009-10-12T11:02:18.690 に答える
1

Windows フォームは .Net 固有であるため、それらを行う場合は C++/CLI (「マネージ C++」) を使用する必要があります。

しかし、Windowsフォームが本当に必要かどうかわかりませんか? ある種のウィンドウ GUI が必要なだけですよね? その場合は、MFC やネイティブの O/S 呼び出しなどを使用して GUI を作成するか、Qtなどのラッパー API を使用できます。

[編集] 少し明確にするために:)

マネージ C++ についても聞いたことがあります。それは何ですか?

C++/CLI は、C++ の .Net 実装です。ここでは、通常の C++ とマネージド コードの両方を使用できます。C++/CLI は、Microsoft が C++ 開発者がマネージ フレームワークに参加するための学習曲線を緩和しようと試みたものですが、最近ではあまり使用されていないため、おそらく適切なチュートリアルを見つけるのに苦労するでしょう。Visual C++ は単なる IDE の名前であり、使用する C++ の種類とは関係ありません。g++ と同じように Visual C++ を使用できますが、コンソール アプリに何もしたくない場合は、GUI ロジックをアプリケーションに接続する必要があります。私の最初の回答で述べたように、これにはさまざまな方法があります。

.Net を使いたいと確信している場合は、C# で 1 日を過ごすことをお勧めします。C++ の経験があれば学ぶのは非常に簡単ですが、あなたの質問から判断すると、これはあなたが望むものではないと思います :)

于 2009-10-12T11:17:22.857 に答える
0

Windows フォームは、Windows で GUI を作成する唯一の方法ではないことに注意してください。純粋な C が必要な場合は、代わりに通常の Win32 API を使用できます (必要に応じて C++ でラップできます)。

Windows フォームを選択した場合は、C#、VB.NET、または C++/CLI (Managed C++) を使用するオプションがあります。あなたの推測のように、C++/CLI を使用する必要はありません。

于 2009-12-13T23:53:27.530 に答える
0

Managed C++ は、Microsoft の共通言語ランタイム (CLR) での .Net 開発に使用されます。この特別な C++ 構文は、C# のような新しい言語を学習しなくても、C++ 開発者が .Net コミュニティに参加できるようにするために作成されました。

CLR 以外のプロジェクトを作成することで、Visual C++ を g++ と同じように使用できます。

于 2009-10-12T11:08:18.443 に答える