struct 和 class 的区别
struct
中的成员默认是public
(union
中也是这样),class
中的成员默认是private
class
可以用来声明模板参数(template parameters),但是struct
不能
struct
从 C 而来,在 C 中还没有很好的面向对象的概念,如封装等,因此 struct
中的成员都是 public
,外界可以随意访问,因此 struct
看起来更像是把一堆数据聚集到一起罢了。class
提供良好的封装继承等特性,其成员默认是私有的。