为什么可以从派生类访问私有成员(取消基类的成员FXN) 这是我的C++程序,继承了BASE。< /P>
因为我们知道私有成员不是继承的,但当我发现o1的大小时,它给出了4个明显的2 int成员,然而o2的大小是6,但如果私有成员不是继承的,则应该是4。有人能帮忙吗 还有一件事,因为我能够公开base的成员fxns,而这些成员又可以访问私有数据成员,所以我们可以说私有成员也可以在类外访问 因为我们知道私有成员不是继承的 那根本不是真的。私有成员是继承的,但派生类无法访问它们。因此,它们的存储仍然存在,否则基类将无法使用其自己的成员。请记住,派生类对象是基类对象,只是添加了更多内容。所有非静态成员都继承给派生类 并且派生类可以访问所有成员 可以直接访问公共和受保护的成员,也可以访问私有成员为什么可以从派生类访问私有成员(取消基类的成员FXN) 这是我的C++程序,继承了BASE。< /P>,c++,c++11,C++,C++11,因为我们知道私有成员不是继承的,但当我发现o1的大小时,它给出了4个明显的2 int成员,然而o2的大小是6,但如果私有成员不是继承的,则应该是4。有人能帮忙吗 还有一件事,因为我能够公开base的成员fxns,而这些成员又可以访问私有数据成员,所以我们可以说私有成员也可以在类外访问 因为我们知道私有成员不是继承的 那根本不是真的。私有成员是继承的,但派生类无法访问它们。因此,它们的存储仍然存在,否则基类将无法使用其自己的成员。请记住,派生类对象是基类对象,只是添加了更多内容。所有非静态成员都继
通过继承的成员函数或指针间接访问 既然我们知道私人成员不是继承的,你的假设是错误的。它们继承的不是直接访问的。请修复代码缩进和大写,使其清晰易懂。您使用的是Turbo C++吗?如果是这样,停止。请立即停止使用。已经20年了。如果你的导师/老师/教授坚持要你使用它,直接去招生办公室要求退款。嗯,这是教学大纲的一部分,我的老师无权选择教什么和不教什么。这取决于大学这是哪所大学?我感觉到一个措辞强硬的讨厌的东西正向他们走来。
#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();
}