类继承问题和访问权限问题。
解决时间 2021-02-02 12:00
- 提问者网友:寂寞梧桐
- 2021-02-02 04:26
如果子类home_unt继承设为protected:。怎么访问呢?如果又设为private:又应该怎么访问呢?请大家写一下,这两种访问方式如何访问。
class home
{
public:
void call_soon()
{
soon();
}
void father()
{
cout<<"Father"< }
protected:
void mother()
{
cout<<"Mother"< }
private:
void soon()
{
cout<<"Soon"< }
};
class home_unt : public home
{
public:
void call_mother()
{
mother();
}
};
void main()
{
home_unt load;
load.father();
load.call_mother();
load.call_soon();
}
请问!
最佳答案
- 五星知识达人网友:风格不统一
- 2021-02-02 05:28
当一个子类从父类继承时,父类的所有成员成为子类的成员,此时对父类成员的访问状态由继承时使用的继承限定符决定。
1.如果子类从父类继承时使用的继承限定符是public,那么
(1)父类的public成员成为子类的public成员,允许类以外的代码访问这些成员;
(2)父类的private成员仍旧是父类的private成员,子类成员不可以访问这些成员;
(3)父类的protected成员成为子类的protected成员,只允许子类成员访问;
2.如果子类从父类继承时使用的继承限定符是private,那么
(1)父类的public成员成为子类的private成员,只允许子类成员访问;
(2)父类的private成员仍旧是父类的private成员,子类成员不可以访问这些成员;
(3)父类的protected成员成为子类的private成员,只允许子类成员访问;
3.如果子类从父类继承时使用的继承限定符是protected,那么
(1)父类的public成员成为子类的protected成员,只允许子类成员访问;
(2)父类的private成员仍旧是父类的private成员,子类成员不可以访问这些成员;
(3)父类的public成员成为子类的protected成员,只允许子类成员访问;
至于类中不同成员(public、private和protected)的访问状态就不细说了。
全部回答
最关键的是你的用户是否存在,这里就是“g”和“p”两个参数的使用了。 /g user:perm 赋予指定用户访问权限, /p user:perm 替换指定用户的访问权限。用户已经存在,就用“p”,能达到你的目的
我试过,用g不行,用p就行,然后在图形界面下,用g没有变化,用p就是正确,我也不清楚这是什么造成的
我要举报
大家都在看
推荐资讯