C#值类型与引用类型
来源:互联网 发布:淘宝店铺名称可以修改 编辑:程序博客网 时间:2024/06/08 10:55
引用类型与值类型的区别:
值类型
ref把一个变量以参数的形式带到一个方法中进行改变,再将改变后的值返回(实参和形参在栈中的地址相同);[栈中也是有地址的]
不加ref,形参和实参是两个量,栈中的地址不同;
值类型的赋值是复制值
引用类型的赋值是复制的地址
static void Main(string[] args) { string str1 = "immutable"; string str2; str2 = str1; str2= "another"; // 虽然string是引用类型,但是由于字符串的不可变性,这里str2又指向了新的地址,所以str1与str2的内容分别是“immutable”和“another”,不一样 father fa1 = new father(); fa1.Name = "dad"; father fa2 = new father(); fa2.Name = "Bb"; father fa3 = fa1; // 这里可以看出fa1赋值给fa3,引用类型的传递 fa1.Name = "father and children"; changle(fa1);// 这里返回的引用类型值发生了改变。 Console.WriteLine("fa1 is content is {0}",fa1.Name ); Console.ReadKey(); } public static void changle(father f) { // 引用类型传递的是地址 f.Name = "change father's name"; // 下面这种方式也是传递地址 father ff = f; ff.Name = "change father's name"; } } public class father { string _name; public string Name { get { return _name; } set { _name = value; } } }
阅读全文
0 0
- 理解C#值类型与引用类型
- 理解C#值类型与引用类型
- 理解C#值类型与引用类型
- 理解C#值类型与引用类型
- 理解C#值类型与引用类型
- C#值类型与引用类型(上)
- 理解C#值类型与引用类型
- C#的值类型与引用类型
- 理解C#值类型与引用类型
- C#值类型与引用类型
- 理解C#值类型与引用类型
- 菜梗谈 - C#值类型与引用类型
- c#值类型与引用类型
- 理解C#值类型与引用类型
- 理解C#值类型与引用类型
- C#值类型与引用类型
- C#中的值类型与引用类型
- C#值类型与引用类型
- 仿美团外卖菜单界面的实现
- 线程优先级
- SSH
- Docker下dubbo开发,三部曲之三:java开发
- 程序生命周期
- C#值类型与引用类型
- 第七章 Linux常用命令(基本用户管理)
- 如何解决Eureka Server不剔除已关停的节点的问题
- LeetCode 94 Binary Tree Inorder Traversal(二叉树中序遍历)
- 设计模式
- [第二章]eval函数小结
- JavaScript 万物皆对象?
- Python文件操作
- 贪心算法——C++实现经典案例——初级