静的領域には変数c, h, mが、静的領域にポインタ+ヒープ領域に実体の変数d, i, nが格納されます。
VB.NETのメモリ領域について
VB.NETのメモリ領域について
以下の(1)~(12)の変数のために、
スタック領域、静的領域、ヒープ領域のどこのメモリが使われるか教えてください。
Class Sample
Dim a As Integer '(1)
Dim b As String = "BBB" '(2)
Shared c As Integer '(3)
Shared d As String = "DDD" '(4)
Sub X()
Dim f As Integer '(5)
Dim g As String = "GGG" '(6)
Static h As Integer '(7)
Static i As String = "III" '(8)
End Sub
Shared Sub Y()
Dim k As Integer '(9)
Dim l As String = "LLL" '(10)
Static m As Integer '(11)
Static n As String = "NNN" '(12)
End Sub
End Class
それぞれこんな認識で合ってますか?
スタック領域 (1)(5)(9)
スタック領域にポインタ+ヒープ領域に実体 (2)(6)(10)
静的領域 (3)(7)(11)
静的領域にポインタ+ヒープ領域に実体 (4)(8)(12)
お礼
回答ありがとうございます。 C#の文法は あまり詳しくないので 読んで理解するのに時間がかかりそうですが 紹介してもらったページと関連リンクを少しずつ読み進めていきます。