为什么string是引用类型 值还不可以修改
2024-08-28 02:10:44
C#把数据类型分为值类型和引用类型。值类型操作简单,引用类型更省空间。
C#一共有15个预定义类型,其中13个值类型(8个整型、2个浮点类型、decimal、bool、char),2个引用类型(string、object)。
值类型适合空间使用少的类型,如 8个整型、2个浮点类型、decimalbool、char。
引用类型适合空间使用大的类型,如string、我们自己声明的类。
string 因为空间较大,所以被作为引用类型。但是如果和一般的引用类型的赋值操作一样,那么容易被在不需要改动的情况下修改。
所以,微软良心,给了折中的办法,每次值的变更,都会给出一个新的地址给变量。原来的地址还是原来的值,自己的修改不影响别人。
这样,string既有引用类型的性能,又有值类型的便捷。
最新文章
- UIwebView 和 H5交互详情
- shell命令locate
- Java Thread join() 的用法
- 自己写了一个类似百度空间自动保存草稿的程序 php+jquery
- 解决从源码编译ncurses6.0编译lib_gen.c报错的问题
- nginx之如何获取真实客户端ip
- C#中对于变量的声明和初始化
- 小白必看Python视频基础教程
- angular2 学习笔记 ( server-side rendering, angular universal, 服务端渲染 )
- 使用springmvc时静态的文件获取不到,比如说样式丢失的问题。
- 51nod“省选”模测第二场 B 异或约数和(数论分块)
- 第六篇 flask中session
- windows系统,boost编译安装
- Android使用Jenkins自动化构建测试打包apk
- 获取用户登陆所在的ip及获取所属信息
- 红米note3发热严重,小米真垃圾!
- 2018 年终总结 &; 2019 年度计划
- JQuery is()与hasClass()方法的对比
- C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped
- 使用hadoop eclipse plugin提交Job并添加多个第三方jar
热门文章
- 使用CMD实现批量重命名[转]
- 利用WPF的ListView进行大数据量异步加载
- 《Linux Device Drivers》第十一章 核心数据类型——note
- memmove、memccpy和memcpy
- Carthage 包管理工具,另一种敏捷轻快的 iOS &; MAC 开发体验 | SwiftCafe 咖啡时光
- StackLayout
- DB First .edmx
- wpf窗体定位
- wpf 绑定表达式和手动更新源
- https://www.jianshu.com/p/4da29fa310d2