0
を管理することが何であるかに違いがある場合は、この宣言は、C++、CLIのいずれかの違いはありますか?事前に違いは</p> <pre><code>BYTE* p; </code></pre> <p>と</p> <pre><code>BYTE^ p; </code></pre> <p>の違いは何ですかポインタ
おかげ
を管理することが何であるかに違いがある場合は、この宣言は、C++、CLIのいずれかの違いはありますか?事前に違いは</p> <pre><code>BYTE* p; </code></pre> <p>と</p> <pre><code>BYTE^ p; </code></pre> <p>の違いは何ですかポインタ
おかげ
BYTE^ p
は、シングル、箱入りバイトにあなたの管理ハンドルを与えるだろう。あなたはそれを多用することはできません(あなたはそれを読むことができますし、C++/CLIでも書くことができません;確かにC#ではできません)。そのボックス化されていない形式。これに対して、バイトの古典的なポインタは、配列の最初(または配列内の任意のバイト)にすることができます。
pin_ptr
は、前者から後者を与えることができます。
最初はバイトへのポインタ、2番目はボックス化されたバイトです。 –
はBYTEです。管理拡張のBYTE __gc *と似ていますか? –
そうだと思いますが、私は古い構文を使ったことはありません。これは 'System :: Object ^'と似ていますが、強く型付けされたボックス化された値(単一のバイト)へのハンドルであることが分かっています。 –