志在指尖
用双手敲打未来

C#中类和结构的区别讲解

classProgram
{
staticvoidMain(string[]args)
{
/*声明类目标并赋值10*/
TestClassTC1=newTestClass();
TC1.x=10;
TC1.y=”10″;
Console.WriteLine(“/*声明类目标TC1并赋值10*/”);
Console.WriteLine(“TC1x={0}y={0}”,TC1.x,TC1.y);
TC1.x=20;
TC1.y=”20″;
Console.WriteLine(“/*修正类目标TC1值为20*/”);
Console.WriteLine(“TC1x={0}y={0}”,TC1.x,TC1.y);
/*履行类传递并修正传递后的值*/
Console.WriteLine(“/*创立类目标TC2指向TC1,并修正值为10*/”);C#中类和结构的区别讲解
TestClassTC2=TC1;
TC2.x=10;
TC2.y=”10″;
Console.WriteLine(“/*类传输过程中传递的是存储在仓库中的引证地址传输中耗费内存小并没有传送存储在堆中的值所以原有目标受到影响*/”);
Console.WriteLine(“TC1x={0}y={0}”,TC1.x,TC1.y);
Console.WriteLine(“TC2x={0}y={0}”,TC2.x,TC2.y);
/*声明结构目标*/
Console.WriteLine(“/*声明结构目标TS1并赋值10*/”);
TestStructTS1=newTestStruct();
TS1.x=10;
TS1.y=”10″;
Console.WriteLine(“TS1x={0}y={0}”,TS1.x,TS1.y);
Console.WriteLine(“/*修正结构目标TS1值为20*/”);
TS1.x=20;
TS1.y=”20″;
Console.WriteLine(“TS1x={0}y={0}”,TS1.x,TS1.y);
/*履行结构传递并修正传递后的值*/
Console.WriteLine(“/*创立结构目标TS2指向TS1,并修正值为10*/”);
TestStructTS2=TS1;
TS2.x=10;
TS2.y=”10″;
Console.WriteLine(“/*结构传输过程中会传递整个目标的副本传输中耗费内存大所以修正对原有目标不受影响*/”);
Console.WriteLine(“TS1x={0}y={0}”,TS1.x,TS1.y);
Console.WriteLine(“TS2x={0}y={0}”,TS2.x,TS2.y);
Console.ReadLine();
}
}
publicclassTestClass
{
publicintx;
publicstringy;
}
publicstructTestStruct
{
publicintx;
publicstringy;
}

未经允许不得转载:IT技术网站 » C#中类和结构的区别讲解
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载