这是我的 C++ 程序,der
继承自base
.
#include <iostream.h>
#include <conio.h>
class base
{
int x;
public:
int y;
void set(int a,int b)
{
x=a;
y=b;
}
void show()
{
cout<<"X ="<<x;
}
};
class der:public base
{
int i;
};
void main()
{
clrscr();
int p,q;
base o1;
der o2;
o2.y=10;
o2.x=20;
q=sizeof(o2);
p=sizeof(o1);
cout<<"Size of Abc "<<p;
cout<<"\nSize of Der "<<q;
getch();
}
因为我们知道私有成员不是继承的,但是当我发现o1
它的大小为 4(显然是 2 个 int 成员)时,大小o2
为 6,但如果private
没有继承,则应该为 4。任何人都可以在这里帮忙。
还有一件事,因为我能够公开基础的成员 fxns,而后者又可以访问私有数据成员,所以我们可以说私有成员也可以在类外访问