首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
值类型和引用类型的区别?写出C#的样例代码。
值类型和引用类型的区别?写出C#的样例代码。
admin
2019-03-29
112
问题
值类型和引用类型的区别?写出C#的样例代码。
选项
答案
值类型的变量直接包含它们的数据,而引用类型的变量存储对它们的数据的引用,后者称为对象。对于引用类型,两个变量可能引用同一个对象,因此对一个变量的操作可能影响另一个变量所引用的对象。对于值类型,每个变量都有它们自己的数据副本(除ref和out参数变量外),因此对一个变量的操作不可能影响另一个变量。所有的值类型均隐式派生自System.ValueType。与引用类型不同,从值类型不可能派生出新的类型。值类型不可能包含null值。 using System; class MyClass { class SomeRef { public int x;} struct SomeVal { public int x; } static void Main(string[] args){ SomeRef r1= new SomeRef(); //分配在托管堆上 SomeVal v1 = new SomeVal(); //分配在堆栈上 r1.x = 5; //在托管堆上修改 v1.x = 5; //在堆栈中修改 SomeRef r2 = r1; //仅拷贝引用 SomeVal v2 = v1; //现在堆栈上分配,然后拷贝值 r1.x = 8; //改变了r1.x r2.x v1.x = 9; //仅改变了v1 Console.WriteLine(r1.x); //8 Console.WriteLine(r2.x); //8 Console.WriteLine(v1.x); //9 Console.WriteLine(v2.x); //5 } }
解析
转载请注明原文地址:https://kaotiyun.com/show/GRmZ777K
0
程序员面试
相关试题推荐
Thecommitteehasanticipatedtheproblemsthat______intheroadconstructionproject.
Arogueloosecalledahackercouldtakecontroloftheentiresystembyimplantinghisowninstructionsinthesoftwareandthe
输入n个整数,输出其中最小的k个。例如输入1,2,3,4,5,6,7和8这8个数字,则最小的4个数字为1,2,3和4。
定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。
描述一下C#中索引器的实现过程,是否只能根据数字进行索引?
如何理解委托?
为邮件到达后应用规则“若发件人包含‘mary@sina.com’转发到wangtao@sina.com”。
Word的样式是一组巳命名的字符和()格式的组合。
如果要将页面上的某个图形设计成页面下载后显示在页面上,当鼠标放在它的上面时,该图形变为另一图形,那么可以通过______方法来设置。A.使用时间线B.“RolloverImage”命令C.将图形插入到表格中D.使用层与行为
随机试题
陶行知生活教育思想包括三个有机联系的部分:生活即教育,社会即学校,_________。
A.寒积便秘B.肠燥便秘C.阳虚便秘D.热积便秘E.胃肠积滞火麻仁长于治疗
医务人员泄漏医疗秘密将会产生不良后果的叙述不正确的是( )
关于主体结构混凝土工程施工缝留置位置说法正确的有()
根据《企业所得税法》的规定,下列项目中,属于不征税收入的有()。
甘于奉献这一人民警察职业道德规范的要求包括()。①埋头苦干②顾全大局③献身使命④任劳任怨
广告花费最高的是()1999年护肤品和电脑产品的广告花费共为()元
供给侧管理和需求侧管理是调控宏观经济的两个基本手段。下列关于供给侧管理的说法,正确的是
以下叙述中错误的是
假设图书表中有一个时间字段,查找2006年出版的图书的准则是()。
最新回复
(
0
)