第四篇 .NET高级技术之结构体及值类型引用类型
2024-08-30 10:20:10
结构体
在平时的开发中很少自己去写结构体,他是一种值类型的数据。对于结构,不像类那样存在继承,一个结构体不能从另一个结构或类继承。但是结构体从基类Object继承。
语法:
//struct是定义结构体的关键字
Struct MyStruct
{
Public string Name{get;set;}
Public int Age{get;set;}
}
值类型和引用类型
什么是“引用类型”:引用类型派生自System.Object
什么是“值类型”:值类型均隐式派生自System.ValueType(ValueType其实也是继承自Object,不过是特立独行的一个分支)
值类型有哪些:数值类型(int、long、double、float、char)、bool、结构体、枚举。(在平时写的时候看不到Int32继承自ValueType的原因是编译器帮我们进行了处理)
引用类型有哪些字符串、数组、类、接口等
区别(主要):
引用类型变量的赋值只复制对对象的引用;引用类型在堆内存(malloc);
值类型变量赋值会拷贝一个副本;值类型在栈内存;值类型一定是sealed;
更多技术请关注
最新文章
- laravel强大功能路由初探(二)
- DOM2级提供的对DOM结构执行深度优先遍历 笔记
- Windows编程中UNICODE和_UNICODE定义问题
- JAVA_OPTS
- Day One(Beta)
- mongoose find查询意错点
- 关于OneProxy推广
- hdu 2426 Interesting Housing Problem 最大权匹配KM算法
- 如何使用 Apache ab 以及 OneAPM 进行压力测试?
- think完全还原原形的 SQL
- Linux回归篇-基础恶补
- Ecshop他们主动双语版切换来推断个人的计划
- HCatalog
- scp 实现文件打包上传到linux
- CSS魔法堂:display:none与visibility:hidden的恩怨情仇
- 通过itools安装ipa时,如果装不上提示";Mismatche...onIdentifierEntitlement";
- Python pycharm 引入需要使用的包
- 梳理源码:spring ioc容器加载的流程图
- Delphi 修改本地日期和时间
- ElasticSearch 5.4 安装
热门文章
- overflow(超出部分省略号)
- 混合minxins
- iOS 各种编译错误汇总
- chmod|chown|chgrp和用法和区别
- the hard problems when writing a great connector; type cohersion, data partitioning and data locality to name a few
- i MySQL 查看约束,添加约束,删除约束
- 装饰器模式(IO流案例)
- Ubuntu安装mycli,让mysql命令行可以自动提示
- 推箱子 Sokoban(华中农业比赛)
- [Java] static, final