C#中struct与class的区别
来源:互联网 发布:c语言主要应用领域 编辑:程序博客网 时间:2024/05/12 17:07
namespace structAndclass
{
class Program
{
static void Main(string[] args)
{
// 区别: struct 在传递的时候,传递是一个副本,并没有修改原始对象
// class 在传递的时候传递的是对原始对象的引用,修改原始对象的值
StructModifyPoint structModifyPoint = new StructModifyPoint(); structModifyPoint.y = 10; structModifyPoint.x = 10; Console.WriteLine("----------Struct--------"); // values are 10,10 Console.WriteLine("Initial values are :{0},{1}",structModifyPoint.x,structModifyPoint.y); Console.WriteLine("Insurt structChangePoint():"); // values are 20,20 structChangePoint(structModifyPoint); // values are 10,10 Console.WriteLine("After Modify,struct values are:{0},{1}", structModifyPoint.x, structModifyPoint.y); ClassModifyPoint classModifyPoint = new ClassModifyPoint(); classModifyPoint.y = 10; classModifyPoint.x = 10; Console.WriteLine("----------Class--------"); // values are 10,10 Console.WriteLine("Initial values are :{0},{1}", classModifyPoint.x, classModifyPoint.y); Console.WriteLine("Insurt classChangePoint():"); // values are 20,20 classChangePoint(classModifyPoint); // values are 20,20 Console.WriteLine("After Modify,class values are:{0},{1}", classModifyPoint.x, classModifyPoint.y); Console.ReadKey(); } //struct public static void structChangePoint(StructModifyPoint point) { point.x += 10; point.y += 10; Console.WriteLine("structChangePoint inner values are:{0},{1}",point.x,point.y); } //class public static void classChangePoint(ClassModifyPoint point) { point.x += 10; point.y += 10; Console.WriteLine("classChangePoint inner values are:{0},{1}", point.x, point.y); }}//结构体
public struct StructModifyPoint
{
public int x;
public int y;
public StructModifyPoint(int x,int y)
{
this.x = x;
this.y = y;
}
}//类
public class ClassModifyPoint
{
public int x;
public int y;
public ClassModifyPoint()
{
} public ClassModifyPoint(int x, int y) { this.x = x; this.y = y; }}
}
20 个 C# 热点问题解答>>微软虚拟学院
1 0
- C#中class与struct的区别
- C#中class与struct的区别
- C#中struct与class的区别
- C#中class与struct的区别
- C#中class与struct的区别
- C#中class与struct的区别
- C#中class与struct的区别
- C#中Struct与Class的区别
- C#中class与struct的区别
- C#中class与struct的区别
- C#中Struct与Class的区别
- C#中Struct与Class的区别
- C# 中struct 与class 的区别
- C# 中 Struct 与 Class 的区别
- C#中Struct与Class的区别
- C#中class与struct的区别
- C#中struct与class的区别
- C#中Struct与Class的区别
- nodejs学习2--process
- 1021. 个位数统计 (15)
- 如何让iOS 保持界面流畅?这些技巧你知道吗
- gvim: GConf-WARNING **: Client failed to connect to the D-BUS daemon
- 关于单表代换密码分析程序设计{C++}
- C#中struct与class的区别
- malloc 能申请多大的空间 http://www.zhihu.com/question/20836462
- poj 2920 Mine Map【BFS】
- 计算机视觉、机器学习相关领域论文和源代码大集合
- Apache Stratos探究:Apache Stratos 4.1.x 的架构
- opencv的KeyPoint
- 用eclipse开发Android,用Genymotion测试时报错adb端口被占用时
- C#中使用split分割字符串的方法小结
- 新浪免费天气Api简单使用说明