VB2005を使っていくうちに、デリゲートやジェネリックなど微妙にポインタを意識させられます。
そこで、重要なのが値型と参照型でありスタックとヒープです。
MSDNに非常にわかりやすく説明されているので、詳しくは「3-3 配列」を参照。
それ自身のメモリに実体を保持する場合、値型といいます。また、実体の入ったメモリのアドレスを 保持する場合、参照型といいます。
VB2005では、数値型やBoolean、char、Date、構造体、列挙型などが値型になります。
参照型には、String、クラス、デリゲートなどがあります。
.NET FrameworkのCLRは、データを格納するメモリ上の領域として「スタック」と「ヒープ」を利用しています。
ローカル変数を使用する場合、スタックに領域が確保されスコープを抜けると解放されます。Newキーワードを 使用する場合ヒープ領域にメモリが確保されます。
MFCなどを使用していた場合、以前はNewしたものはDeleteしなければならなかったのですが、CLRではメモリの解放を ガベージコレクタが行ってくれます。
Copyright 1997-2008 BBB All rights reserved.