gpt4 book ai didi

c++ - 在派生类中使用 protected 说明符

转载 作者:行者123 更新时间:2023-11-30 01:51:01 29 4
gpt4 key购买 nike

我不确定成员 var isMouseOverYard 的正确访问说明符。在代码片段中,我没有从 House 继承的计划。选项 1 与基类更一致(如果我要从任一类继承,我可以检查鼠标是否在对象/院子上)。但是,如果我不从 House 继承,选项 2 更符合我当前的意图。是否有关于此用法的约定?

class Object
{
protected:
virtual bool isMouseOverObject() const;
};

选项 1

class House : public Object
{
protected:
virtual bool isMouseOverObject() const override;
bool isMouseOverYard() const;
};

选项 2

class House : public Object
{
protected:
virtual bool isMouseOverObject() const override;

private:
bool isMouseOverYard() const;
}

最佳答案

我的一般经验法则是尽可能限制可见性。 IE。我会在 House 类中将 isMouseOverObject 设为私有(private)。

关于c++ - 在派生类中使用 protected 说明符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26648085/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com