※ ChatGPTを利用し、要約された質問です(原文:VB2008: 構造体に関するMSDNの解釈について!)
VB2008: 構造体に関するMSDNの解釈について!
このQ&Aのポイント
VB2008で構造体に関するMSDNの解釈について調査しています。
構造体変数の代入に関するMSDNの説明には、参照型の要素はデータへのポインタがコピーされるとあります。
ただし、具体的な結果は予測できず、説明が不完全な可能性もあると考えています。
VB2008: 構造体に関するMSDNの解釈について!
' ==================
' 構造体変数の代入
' ==================
Module theTEST
Private Structure TEST4
Dim MembersCount As Integer
Dim Member1 As String
Dim Member2 As String
End Structure
Sub Main()
Dim T4_1 As TEST4
Dim T4_2 As TEST4
T4_1.MembersCount = 1
T4_1.Member1 = "T4_1:Member1"
T4_1.Member2 = "T4_1:Member2"
T4_2 = T4_1
Debug.Print(T4_2.MembersCount.ToString)
Debug.Print(T4_2.Member1)
Debug.Print(T4_2.Member2)
End Sub
End Module
[イミディエイト ウインドウ]
1
T4_1:Member1
T4_1:Member2
>構造体の要素が文字列型 (String) やオブジェクト型 (Object) などの参照型である場合は、データへのポインタがコピーされます。
(http://msdn.microsoft.com/ja-jp/library/18ytyskd(VS.80).aspx)
このMSDNライブラリの説明によると、
[イミディエイト ウインドウ]
0
T4_1:Member1
T4_1:Member2
という結果を得るというのが私の予測。
もしかしたら、MSDNライブラリの説明の舌足らず。
>構造体の要素が値型であらば値がコピーされますが、文字列型 (String) やオブジェクト型 (Object) などの参照型である場合は、データへのポインタがコピーされます。
ということでしょうか?
お礼
納得です。 ありがとうございました。 ※確信がなかったもので・・・。 ありがとうございました。