重複の可能性:
非管理対象タイプと管理対象タイプの違いは何ですか?
私は最近、C++ でアプリケーションに取り組んでいて、マネージ型、ネイティブ型、マーシャリングなどと呼ばれるものに出くわしました。これらの用語が何を意味するのかよくわかりません。私が読んだことから、いくつかの .Net 機能 (.Net ネイティブ型) へのアクセスを許可するために C++ で型を管理し、マーシャリングを使用して管理型からネイティブ型 (逆) に変換しているようです。私は正しいですか?ありがとう〜
重複の可能性:
非管理対象タイプと管理対象タイプの違いは何ですか?
私は最近、C++ でアプリケーションに取り組んでいて、マネージ型、ネイティブ型、マーシャリングなどと呼ばれるものに出くわしました。これらの用語が何を意味するのかよくわかりません。私が読んだことから、いくつかの .Net 機能 (.Net ネイティブ型) へのアクセスを許可するために C++ で型を管理し、マーシャリングを使用して管理型からネイティブ型 (逆) に変換しているようです。私は正しいですか?ありがとう〜
マネージ C++ は、Microsoft が作成したものです。マネージ C++ フレームワークを使用して開発されたアプリケーションは、仮想マシン環境内で .NET アプリケーションと同じように動作します。これにより、より多くの実行時チェック、メモリ割り当てなどの機能が提供されます。また、VM は、.NET が C# に対して行うのと同じように、ガベージ コレクションを提供しました。マネージド フレームワークの制限は、VM が多重継承をサポートしていないことです (C# は多重継承をサポートしていません)。したがって、マネージ C++ 開発は制限されていました。マーシャリングはシリアライゼーションとも呼ばれ、RPC を介して他のプロセスまたはマシンに送信するために、オブジェクトが他の「単純な」型に変換されます。