美文网首页
结构(struct)与类(class)之间的区别

结构(struct)与类(class)之间的区别

作者: 122604 | 来源:发表于2018-02-05 11:53 被阅读0次

struct(结构):

        1.值类型,在栈中.

        2.不可给属性设置初始值.

        3.编译器自动定义无参构造,不可以手动添加无参构造.

        4.定义带参构造后(无论几个参数),必须对所有属性进行初始赋值.

        5.可以不用实例化,定义后直接使用.

        6.不支持继承.

class(类):

        1.引用类型,在堆中.

        2.可以给属性设置初始值.

        3.编译器自动定义隐式无参构造,也可以手动添加显式无参构造.

        4.定义带参构造后,只需赋值参数对应属性即可,但是需要使用无参构造时,必须手动添加.

        5.类使用必须进行实例化.

        6.支持继承.

结构适用的场景

        1.由于分配内存快,作用域结束即被删除,不需要垃圾回收,用于小型数据结构,但传递过程会复制,应该使用ref修饰,提高效率

相关文章

网友评论

      本文标题:结构(struct)与类(class)之间的区别

      本文链接:https://www.haomeiwen.com/subject/nhvbzxtx.html