ylbtech- .NET-Basic:C#中的值类型与引用类型的区别 |
C#中的值类型(value type)与引用类型(reference type)的区别
1.A,相关概念 |
C#中有两种数据类型:值类型(value type)和引用类型(reference type)。
值类型的变量直接包含它们的数据,而引用类型的变量存储对它们的数据引用,后者称为对象。对于引用类型,两个变量可以引用同一对象,因此对一个变量操作可能影响另一个变量所引用的对象。对于值类型,每个变量都有它们自己的数据副本(除 ref 和 out 参数变量外),因此对一个变量操作不可能影响另一个变量。
1.B,测试源代码 |
using System;namespace ConsoleApplication1{ class RefClass { public int Value = 0; } ////// ylb:C#中的值类型与引用类型的区别 /// class Program { static void Main(string[] args) { int val1 = 0; int val2 = val1; val2 = 123; RefClass ref1 = new RefClass(); RefClass ref2 = ref1; ref2.Value = 123; //主要只修改了对象 ref2 中的值 Console.WriteLine("Values:{0},{1}",val1,val2); Console.WriteLine("Refs:{0},{1}", ref1.Value, ref2.Value); } }}
//ExecutionResult
Values:0,123Refs:123,123请按任意键继续. . .
1.C,资源下载 |
无
作者:出处:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |