• 值类型和引用类型


    1:现实中的值类型和引用类型:

      值类型:就如一份报纸,你可以影印一份给你的朋友,你的和副本各自独立,各自改动时,互不影响。

      引用类型:一个网页,你可以给你的一个朋友一个URL,如果网页内容改变,则都会变。

    2:.NET中大多数类型都是引用类型。

      引用类型:类,数组 ,委托,接口。

      值类型:结构,枚举。

    3:变量的值总是在它声明时的位置存储的。(局部变量:栈(stack);实例变量:实力本身所在)

      引用类型实力(对象):堆(heap);静态也是;

    4.对于引用类型,每个对象的开头都包含一个数据块,它标示了对象的实际类型,同时还提供其它的一些信息。永远都不能改变一个对象的类型,引用并不知道对象的类型。

    5.值类型不需要垃圾回收,不会因类型标识而产生开销,也不需要取值这一步运算。

    6.引用类型,在传递参数,赋值,将值返回和执行类似的操作时,只需要赋值4或8个字节,而不是复制全部数据。

    7.引用类型在堆上,值类型中,局部变量在栈上,实例变量不一定,取决于上下文。

    8.值类型在需要变成引用类型时,为装箱,反之为拆箱。

  • 相关阅读:
    Go 环境变量相关操作
    Go命令行参数解析flag包
    go sync.once用法
    使用go语言编写IOS和Android程序
    go map的使用
    go runtime.Gosched()的作用分析
    go中的读写锁RWMutex
    go互斥锁Mutex
    go import使用及. _的作用解析
    利用channel在goroutins之间控制同步和传递数据
  • 原文地址:https://www.cnblogs.com/hzko5114/p/3587400.html
Copyright © 2020-2023  润新知