I am looking at the implementation of an API that I am using.
I noticed that a struct is inheriting from a class and I paused to ponder on it...
First, I d
A class will not publicly inherit from a struct. A struct will publicly inherit from a class or a struct.
class A
{
public:
int a;
};
struct B : A
{};
B b; b.a=5; //OK. a is accessible
class A
{
public:
int a;
};
struct B : public A
{};
It means the same. B b; b.a=5; //OK. a is accessible
struct A
{int a;};
class B : A
{};
B b; b.a=5; //NOT OK. a is NOT accessible
struct A
{int a;};
class B : public A
{};
B b; b.a=5; //OK. a is accessible
Finally:
class A
{int a;};
class B : A
{};
B b; b.a=5; //NOT OK. a is NOT accessible
class A
{int a;};
class B : public A
{};
B b; b.a=5; //NOT OK. a is NOT accessible