您的位置:首页 > 编程语言 > C#

C#学习笔记(基础知识回顾)之值传递和引用传递

2016-11-09 17:03 253 查看

一:要了解值传递和引用传递,先要知道这两种类型含义,可以参考上一篇

C#学习笔记(基础知识回顾)之值类型和引用类型

二:给方法传递参数分为值传递和引用传递。

 2.1在变量通过引用传递给方法时,被调用的方法得到的就是这个变量,更准确的说,是指向内存中变量的指针。所以方法内部对变量进行的任何改变在方法退出后仍然有效。而如果变量通过值传递给方法,被调用的方法得到的是变量的一个相同副本,也就是说方法退出后,对变量进行的修改会丢失。

  2.2值类型的值传递:值类型的变量包含的是实际数据,作为参数传递的是数据本身的副本。如下,int类型通过值传递给方法,对应方法对该值所做的任何改变都没有改变原先int对象的值。

class Program
{
static void Main(string[] args)
{
StringBuilder str = new StringBuilder();
str.Append("hello");
AddOne(ref str);

Console.WriteLine("str的值为:" + str);//输出值为,world

Console.ReadKey();
}

public static void AddOne(ref StringBuilder sb)
{
sb = new StringBuilder();
sb.Append(",world");
}
}


View Code





三:关于值类型和引用类型的转换可看下一篇:

C#学习笔记(基础知识回顾)之值类型与引用类型转换(装箱和拆箱)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: