美文网首页
Unity3D笔记(十三)关于值类型与引用类型

Unity3D笔记(十三)关于值类型与引用类型

作者: 鲫鱼汤 | 来源:发表于2019-04-24 22:56 被阅读0次

一.值类型、引用类型的定义

值类型:直接访问数据的值。

引用类型:访问数据的存储地址。

二. C#中如何判定值类型

使用Type.IsValueType属性,true为值类型。

值类型判断

三.值类型与引用类型主的主要类型

值类型:基本数据类型(int、float、double等)、结构数据类型、枚举数据类型。

引用类型:类、接口、数组、字符串和委托。

四.值类型与引用类型的不同点

1.内存分配不同:值类型通常被分配到栈上,它的变量直接包含变量的实例,使用效率比较高。

引用类型分配在堆上,它的变量通常会包含一个指向实例的指针,变量通过该指针来引用实例。

2.默认值不同:值类型默认情况下自动初始化为0。引用类型默认情况下为null。

3.继承类不同:值类型继承自System.ValueType。引用类型继承自System.Object。

4.回收方法:值类型不由GC控制,作用域结束时自行释放。引用类型由GC完成。

5.继承性不同:值类型是密封的,因此不能用作基类。引用类型一般有继承性。

相关文章

  • Note 3 Swift (1)

    Swift学习笔记 变量与常量 变量 常量 值类型与引用类型 值类型 引用类型 数组与字典 数组 字典

  • Unity3D笔记(十三)关于值类型与引用类型

    一.值类型、引用类型的定义 值类型:直接访问数据的值。 引用类型:访问数据的存储地址。 二. C#中如何判定值类型...

  • javascript复习笔记一(变量类型与计算)

    变量类型:分为值类型与引用类型 一、值类型与引用类型 值类型:存储的是具体的值(undefined、Boolean...

  • JavaScript中的浅拷贝与深拷贝

    值类型与引用类型 谈浅拷贝与深拷贝之前,我们需要先理清一个概念,即值类型与引用类型。 什么是值类型与引用类型?这要...

  • 深拷贝与浅拷贝

    一.引用类型与值类型 我们都知道,js有两种基本类型,引用类型与值类型。引用类型的“=”只是拷贝了引用,而基本类型...

  • C#中数据到底存在堆上还是栈上

    C#的栈与堆 首先复习一下值类型与引用类型 1. 值类型与引用类型 值类型:基本数据类型([int,long,fl...

  • 装箱拆箱Day0817

    //值类型和引用类型之间的转换称为装箱与拆箱 //装箱是值类型转化为引用类型 //拆箱是引用类型转化为值类型 in...

  • JS基本类型、引用类型梳理

    原始值类型与引用值类型 ECMAScript规范中定义了变量的两种类型:原始值类型和引用值类型。区别两种类型的直接...

  • Js基础知识-手动实现深拷贝

    本文将手动实现引用类型的深拷贝关于值类型与引用类型可阅读下方文章:JS基础类型直通车:Js基础知识-变量类型Js基...

  • Js基础知识-变量类型

    JS值类型与引用类型 值类型 string number boolean symbol underfind 举例 ...

网友评论

      本文标题:Unity3D笔记(十三)关于值类型与引用类型

      本文链接:https://www.haomeiwen.com/subject/scongqtx.html