struct and class and inheritance (c++)

c++, inheritance, struct

Solution

From C++ standard, 11.2.2, page 208:

In the absence of an access-specifier for a base class, public is assumed when the derived class is declared struct and private is assumed when the class is declared class.

So yes, you are correct: when the derived class is a `struct`, it inherits other classes as `public` unless you specify otherwise.

Problem

Could you ensure me, if all access specifiers (including inheritance) in `struct` are `public` ? In other words: are those equal? ``` class C: public B, public A { public: C():A(1),B(2){} //... }; ``` and ``` struct C: B, A { C():A(1),B(2){} //... }; ```

Original source

Related problems