zoukankan      html  css  js  c++  java
  • C#中类和结构体的区别 -0017

    类和结构体实际上都是创建对象的模板,每个对象都包含数据,并提供了处理和访问数据的方法。

    类是引用类型,总是存储在堆(heap)上;

    结构体是值类型,通常存储在栈(stack)上,结构体不支持继承。

    较小的数据类型使用结构体可以提高性能;在栈上存储值类型可以避免垃圾收集。

    对于类和结构体,都使用关键字new来声明实例:创建对象并对其进行初始化。

    类示例:

        class Customer
        {
            public int CustomerId { get; set; }
            public string Name { get; set; }
        }
    

      

    结构体示例:

        struct CustomerStruct
        {
            public int CustomerId { get; set; }
            public string Name { get; set; }
        }
    

      

    声明实例和使用:

        class Program
        {
            static void Main(string[] args)
            {
                var testClass = new Customer()
                {
                    CustomerId = 100,
                    Name = "Name 100"
                };
    
                var testStruct = new CustomerStruct()
                {
                    CustomerId = 200,
                    Name = "Name 200"
                };
    
                Console.WriteLine($"Class: {testClass.CustomerId} - {testClass.Name} ");
                Console.WriteLine($"Struct: {testStruct.CustomerId} - {testStruct.Name}");
            }
        }
    

    注意:

    类和结构体的一个重要区别四,类类型的对象通过引用传递,结构体类型的对象按值传递。

      

  • 相关阅读:
    Python round() 函数
    Python pow() 函数
    图像角点检测
    计算机视觉解析力
    空间点像素索引(三)
    空间点像素索引(二)
    空间点像素索引(一)
    相机标定实用方案
    摄像头的主要参数
    多篇开源CVPR 2020 语义分割论文
  • 原文地址:https://www.cnblogs.com/codesee/p/13111506.html
Copyright © 2011-2022 走看看