在C++中:
class和struct的最基本的区别就是:
1. 默认的继承访问权限: struct是public的,class是private的。
在class中,在默认的情况下,它的成员是私有的,而在struct中,默认的情况下,它的成员是公有的!
struct A
{
int a;
};
struct B : A
{
int b;
};
这个时候B是public继承A的。
如果都将上面的struct改成class,那么B是private继承A的。这就是class默认的继承访问权限。
如果class A要想public继承B,则需要标明:class B : public A
指明是public继承,而不是用默认的private继承。