来自 http://soft.chinabyte.com/database/176/12586176.shtml
(1)默认继承权限,如果不指定,来自class的继承按照private继承处理,来自struct的继承按照public继承处理;
(2)成员的默认访问权限。class的成员默认是private权限,struct默认是public权限。以上两点也是struct和class最基本的差别,也是最本质的差别;
而且,struct还有以下特性:
struct可以包含成员函数
struct完全支持析构函数
struct完全支持继承
struct完全支持多态
struct支持private、protected和public关键字
如果是class的父类是struct关键字描述的,那么默认访问属性是什么?当出现这种情况时,到底默认是public
继承还是private继承,取决于子类而不是基类。class可以继承自struct修饰的类;同时,struct也可以继承自class修饰的类,继承属性如下列描述:
[cpp]
struct A{};
class B:A{}; // private 继承
class A{};
struct B:A{}; // public 继承
最后,那么到底是使用struct,还是使用class呢?这个看个人喜好,但是这里有一个编程规范的问题,当你
觉得你要做的更像是一种数据结构的话,那么用struct,如果你要做的更像是一种对象的话,那么用class。