大家好,我叫徐锦桐,个人博客地址为www.xujintong.com。平时记录一下学习计算机过程中获取的知识,还有日常折腾的经验,欢迎大家访问。
前言
我们这里讨论的是cpp下的struct。
首先cpp下的class和struct差不多,比如说都可以用public
,private
,protected
等属性,还可以用成员函数,但还是有一些区别的。
默认数据属性不同
struct的默认数据是public的,而class默认的是private的。
class的最后会编译错误。
默认继承方式不同
struct默认是公有继承,class默认是私有继承。其实也挺好理解的,struct默认数据属性就是public的,难道继承后子类就变成了private了吗。
最后class继承的还是会编译错误,因为是private继承,不能在类外访问类内数据。
总结
我们为了数据安全一般定义类的时候用class,struct一般用户不同类型数据的一个集合。