C++中struct和class定义类区别

有一种常见的误解认为用struct保留字定义的类与用class定义的类有很大的区别。唯一的不同只是默认的成员保护级别和默认的派生保护级别,没有其他的区别。

1. 用class定义的类,默认的成员访问级别为private。struct定义的类成员默认访问级别是public。

2. 使用class关键字定义的派生类默认具有private继承,而用struct关键字定义的类默认具有public继承:

  class Base {/*....*/};

  struct D1 : Base {/*....*/};     //public inheritance by default

  class D2 : Base {/*....*/};       //private inheritance by default

以上转载自:http://www.cnblogs.com/younes/archive/2010/01/23/1654947.html

但是我发现。。。

struct不可以显示声明无参构造函数和析构函数!!!

原文地址:https://www.cnblogs.com/CnZyy/p/3317799.html