VB 2010 (3) 值类型和引用类型

        值类型表示位于堆栈上的简单数据存储。堆栈用于大小已知的数据项,所以堆栈上的数据项检索起来比托管堆上的数据项块。堆栈是一个比较小的内存区域,进程和线程在其中存储大小固定的数据块。

        引用类型基于派生于其父类的复杂类,存储在托管堆上。托管堆进行了优化,以支持不同大小的对象的动态内存分配。引用类型没有固定的大小。引用类型的地址可以存储堆栈上。

Point 结构

值类型变量,System.Drawing空间的一部分

https://docs.microsoft.com/zh-cn/dotnet/api/system.drawing.point?view=netframework-4.8

StringBuilder 类

引用类型变量,System.Text空间的一部分。

Public Class Form1
    Dim count As Integer
    Private Sub ButtonTest_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonTest.Click
        count += 1
        'MessageBox.Show("Hello World show " & count.ToString & " times", _
        '                "Hello World message box", _
        '                MessageBoxButtons.OK, _
        '                MessageBoxIcon.Information)
        'ValueType()
        RefType()
    End Sub
    Private Sub ValueType()
        Dim ptX As Point = New Point(10, 20)
        Dim ptY As Point
        ptY = ptX
        'ptX变,ptY不会变
        ptX.X = 200
        TextBox1.Text = "Pt Y= " & ptY.ToString
    End Sub

    Private Sub RefType()
        Dim objX As System.Text.StringBuilder = New System.Text.StringBuilder("Hello World.")
        Dim objY As System.Text.StringBuilder
        objY = objX
        'objX变化,objY也会变,浅复制(shallow copy)
        objX.Replace("World", "Test")
        TextBox1.Text = "objY = " & objY.ToString
    End Sub
End Class
 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ngbshzhn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值