C# 结构与类的区别

2021-06-17 06:05

阅读:413

标签:执行   效率   声明变量   color   构造函数   访问   不能   使用   int   

一、定义方式

  定义结构:

  struct PointStruct  //默认的访问权限是 public
  {
    public int X { get; set; }
    public int Y { get; set; }

    public PointClass(int x, int y)
    {
      X = x;
      Y = y;
    }
  }

  定义类:

    class PointClass  //默认的访问权限是 private
    {
        public int X { get; set; }
        public int Y { get; set; }

        public PointClass(int x, int y)
        {
        }
    }

  首先,声明所使用的关键字: 使用 struct 声明结构,使用 class 声明类。

  其次,默认的访问权限:   结构的默认访问权限是 public,而类的默认访问权限是 private。

  然后,声明的变量的初始值: 在类里面声明变量可以给初始值,但在结构体中声明的变量是不可以赋初始值的。

  最后,构造函数:      结构体不能显式定义无参数的构造函数,并且结构体中的构造函数中必须给该结构体的所有字段赋值;但是类的构造函数中可以不给字段赋值。

二、存储及赋值

  结构是值类型,存储在堆栈空间内,其对象的字段值是直接存储在这个变量中的。(堆栈的空间有限,但处理效率要比堆的执行效率高)

C# 结构与类的区别

标签:执行   效率   声明变量   color   构造函数   访问   不能   使用   int   

原文地址:https://www.cnblogs.com/zhangchaoran/p/10336937.html


评论


亲,登录后才可以留言!