当前位置:首页 > C#教程 > C#高级

C# struct结构体与enum枚举基本知识点,class与struct的区别

             1
            using
             UnityEngine;

             2
            ///
            <summary>
             3
            ///
             枚举类型

             4
            ///
            </summary>
             5
            public
            enum
             state

             6
            {

             7
                gameStart,

             8
                gameRuning,

             9
                gameOver

            10
            }

            11
            ///
            <summary>
            12
            ///
             struct结构体 用于储存数据

            13
            ///
            </summary>
            14
            public
            struct
             data

            15
            {

            16
            public
            string
             name;

            17
            public
            int
             age;

            18
            19
            }

            20
            public
            class
             test : MonoBehaviour

            21
            {

            22
            /*
            23
                  struct与class的区别:

            24
                        1.class 是引用类型,structs是值类型

            25
                        2.class可以设为null。但是我们不能将struct设为null,因为它是值类型。

            26
                        3.实例一个class,它创建在堆上。实例一个struct,它创建在栈上.

            27
                        4.类使用前必须new关键字实例化,Struct不需要

            28
                        5.Struct不支持继承和多态,其成员不能以protected 或Protected Internal 修饰

            29
                        6.Class 可以有明显的无参数构造函数,但是Struct不可以

            30
                        7.Class比较适合大的和复杂的数据,Struct适用于作为经常使用的一些数据组合成的新类型。

            31
            */
            32
            33
            34
            void
             Start()

            35
                {

            36
            //
            枚举类型的赋值,枚举类型一般用于游戏状态的控制
            37         state _state1 = state.gameOver;
383940//struct结构体赋值 不需要用new关键字实例化41        data _data1;
42         _data1.name = "H";
43         _data1.age = 1;
444546        data _data2;
47         _data2.name = "J";
48         _data2.age = 2;
49    }
50 }

 

原文:https://www.cnblogs.com/ybqjymy/p/12503201.html


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!