.Net学习笔记----2015-06-28(值类型和引用类型)
值类型:int double char decimal bool enum struck;存在内存的栈里
引用类型: string 数组 自定义类 集合 object 接口;存在堆里
值传递和引用传递:
1、值类型在复制的时候,传递的是这个值的本身
2、引用类型在复制的时候,传递的是这个对象的引用
字符串是个特殊:
字符串由于其不可变性,每次赋值都会为其开辟一块新的内存如:
string s1 = "张三";string s2 = s1;s2 = "李四";Console.WriteLine(s1);Console.WriteLine(s2);Console.ReadKey();
最终结果,s1 = 张三, s2 = 李四
int number = 10;TestTwo(ref number);Console.WriteLine(number);Console.ReadKey();}public static void TestTwo(ref int n){n += 10;}
上述代码中,ref把n的地址变成类number的地址,也就是,ref把值传递变成了引用传递。
如果不加ref,值传递是把number的值传递给n,方法中没有返回值,不会改变外部调用方法时传递的实参,
但是加了ref以后,n接收的是number的地址,所以n的改变就会影响number的值(按照自己的理解所写,有点乱,呵呵)
转载于:https://www.cnblogs.com/mikie/p/4606439.html
.Net学习笔记----2015-06-28(值类型和引用类型)相关推荐
- 2023-01-29 学习笔记:常见28种数据分析模型
2023-01-29 学习笔记:常见28种数据分析模型 知乎上的一篇文章,虽然之前对深度学习相关模型有所了解,但通过这篇文章了解了更多模型的应用场景,同时也知道了日常一共有多少种实用模型. Excel ...
- B站台湾大学郭彦甫|MATLAB 学习笔记|06 高阶绘图 Advanced Plot
MATLAB学习笔记(06 高阶绘图 Advanced Plot) 如果想获得更好浏览体验的朋友可以转到下面链接 06 1. 对数图 (Logarithm Plots) x = logspace(-1 ...
- 《流畅的python》学习笔记之python是什么类型的语言?
讨论类型时,最好考虑两条不同的坐标线! 强类型和弱类型 如果一门语言很少隐式转换类型,说明它是强类型语言.如果经常这么做,说明它是弱类型语言.其中,java,c++和python是强类型语言,php, ...
- C#基础知识整理:基础知识(11) 值类型,引用类型
C#是面向对象的语言,在面向对象的思想中,只有对象,所有事物都可以用类描述.所以比如这些,int,bool,char,string,double,long等都是类,那么像,30,2.5,"t ...
- 理解C#值类型与引用类型
这篇文章是我几个月前写的,今天进行了比较大的修订,重新发了出来,希望和大家共同探讨,并在此感谢Anytao 的讨论和帮助. 从概念上看,值类型直接存储其值,而引用类型存储对其值的引用.这两种类型存储在 ...
- LV2之-----js 值类型和引用类型(基石1)
一.学习目标 1.值类型和引用类型的基本概念 2.常见的值类型和引用类型都有哪些? 3.数据类型检测 4.值类型和引用类型在内存中的存储机制 5.创建对象的方式有哪些? 6.对象属性名的点表示法和方括 ...
- 第2篇 C#数据类型-值类型与引用类型
一 C#内存分配 在应用程序与操作系统之间有一个"中间人"--公共语言运行时(Common Language Runtime,CLR).它为应用程序提供内`存管理,线程管理和远程处 ...
- 值类型与引用类型(下)
本文将介绍以下内容: 类型的基本概念 值类型深入 引用类型深入 值类型与引用类型的比较及应用 [下载]:[类型示例代码] 1. 引言 值类型与引用类型的话题经过了两个回合([第八回:品味类型---值类 ...
- 转:图解C#的值类型,引用类型,栈,堆,ref,out
C# 的类型系统可分为两种类型,一是值类型,一是引用类型,这个每个C#程序员都了解.还有托管堆,栈,ref,out等等概念也是每个C#程序员都会接触到的概念,也是C#程序员面试经常考到的知识,随便搜搜 ...
- [你必须知道的.NET]第九回:品味类型---值类型与引用类型(中)-规则无边
发布日期:2007.5.28 作者:Anytao ©2007 Anytao.com ,原创作品,转贴请注明作者和出处. 接上回[第八回:品味类型---值类型与引用类型(上)-内存有理]的探讨,继续我们 ...
最新文章
- luogu_2107【题解】
- 非法ip通过ssh成功登录,自动结束会话
- 阿里研究员:缩短软件开发中的反馈弧
- linux下使用lftp的小结
- nginx配置 yii2 URL重写规则 SSI配置使shtml
- python学习-序列化对象(pickle)
- 怎样在sqlite3上执行SQL语句
- AngularJS之watch
- Python界面 PyQT可视化开发(python3+PyQt5+Qt Designer)
- 最小二乘法,了解一下?
- linux命令哲学,Linux哲学思想、history实现执行命令的时间、Linux命令格式
- Java基础——String类(二)
- .so文件的生成和使用
- 计算机路由器无线级联配置,不同品牌无线路由器 无线级联 配置案例
- gcc: error trying to exec ‘cc1plus‘: execvp: Permission denied
- python线性回归预测pm2.5_李宏毅 线性回归预测PM2.5
- diameter协议栈_Diameter协议摘要
- ViewPager Indicator 自定义标题和指示器样式
- win10安装虚拟机,开启不了热点问题
- ACM-HDoj暑假竞赛(7)-1010解题报告
热门文章
- js跨域 ajax跨域问题解决
- 基于Matlab的LDPC码性能研究毕业设计(含源文件)
- 工具杂记-notepad++正则表达式匹配替换
- C++设计模式-中介者模式
- Python基础语法毕业笔记-最简单的添加删除程序
- C++工作笔记-编译时类型检查与运行时类型检查
- android 兼容性定义,谷歌释出 Android 7.0 兼容性定义文件,史上最严
- python 简单trace 过滤处理
- python网盘系统_python做系统
- put url带参数_一道腾讯面试题:如何快速判断某 URL 是否在 20 亿的网址 URL 集合中?...