1. 访问修饰符作用
public
:
- 被声明为
public
的成员(成员变量和成员函数)在类的外部可以被直接访问。例如,在创建类的对象后,可以通过对象名直接访问 public
成员。这通常用于提供类的外部接口,使得其他代码能够与该类进行交互。
private
:
private
成员只能在类的内部被访问。这意味着类的成员函数可以访问 private
成员变量和调用 private
成员函数,但在类的外部,无论是通过对象还是其他方式都无法直接访问 private
成员。private
修饰符用于隐藏类的实现细节,防止外部代码随意修改类的内部状态,从而保证数据的安全性和一致性。
protected
:
protected
成员与 private
成员类似,在类的内部可以被访问。不同之处在于,protected
成员在类的派生类(子类)中也可以被访问,而 private
成员在派生类中是不可访问的。protected
修饰符通常用于在基类中定义一些成员,这些成员对于派生类的实现是有用的,但不希望在类的外部被直接访问。
2. Circle
类的定义及成员函数实现
class Circle {
private:
double radius;
public:
// 设置半径的函数
void setRadius(double r) {
if (r >= 0) {
radius = r;
} else {
// 这里可以选择抛出异常或者进行其他错误处理
radius = 0;
}
}
// 获取半径的函数
double getRadius() const {
return radius;
}
};