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

c#值类型,引用练习,ref,out

2014-07-08 00:30 225 查看
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int i = 10;//值类型
int j = 10;//必须初始化
int k;//不需要初始化
int[] iarr = { 1, 2, 3, 4 };//引用类型
SetI(i);//值传递
SetS(iarr);//引用传递
SetSI(ref j);//ref
SetOI(out k);//out
Console.WriteLine(i);//输出10
Console.WriteLine(iarr[0]);//输出100
Console.WriteLine(j);//输出20
Console.WriteLine(k);//输出100
Console.ReadKey();
}
//值类型不会改变原来的值(创建一个新的副本)【值传递】
static void SetI(int i)
{
i = 20;
}
//引用类型,会改变原来的值【引用传递】
static void SetS(int[] i)
{
i[0] = 100;
}
//值传递,使用ref迫使使用引用传递,会改变原始的值
static void SetSI(ref int j)
{
j = 20;
}
static void SetOI(out int k)
{
k = 100;
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息