gpt4 book ai didi

c++ - 基于类实现功能难

转载 作者:搜寻专家 更新时间:2023-10-31 00:53:48 24 4
gpt4 key购买 nike

我正在尝试编写一个函数来检查给定点是否包含在圆中(位于整数 xy 平面中)。对于该任务,我想使用我编写的类,如下所示。

class Point
{
public:
Point(int x, int y);
int getX() const;
int getY() const;
void setX(int x);
void setY(int y);

private:
int x, y;
};
class Circle
{
public:
Circle(int x, int y, int r);
bool contains(const Point &p) const;

private:
const Point center;
int radius;
};

我发现编写“包含”函数有些困难。这是我所做的。当我写这个函数时,我得到一个错误,说“member Point::x is inaccessible”,我不明白哪里出了问题。

bool Circle::contains(const Point &p) const
{

if ((p.x-center.x)>=(-1*radius) && (p.x-center.x)<=radius && (p.y-center.y)>=(-1*radius) && (p.y-center.y)<=radius )
return true;
return false;

最佳答案

xprivatePoint 的数据成员,这基本上意味着它 无法从 Point 类外部直接访问

要从 Point 类外部访问 x,您需要一个返回 x 的公共(public)函数。

int getX() const {
return x;
}

每当您需要从 Point 类外部访问 x 时调用此函数。

关于c++ - 基于类实现功能难,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47514745/

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