c++类成员的访问范围
在 C++ 中,类的成员可以设置不同的访问权限,以控制对这些成员的访问范围。C++ 中有三种访问权限修饰符:public、protected 和 private。
public:公有访问权限是最开放的权限,表示该成员对外部代码是可见和可访问的。公有成员可以在类内部和类外部访问。
protected:保护访问权限介于公有和私有之间,表示该成员对外部代码是不可见的,但对派生类是可见的。保护成员可以在类内部和派生类中访问,但不能在类外部访问。
private:私有访问权限是最严格的权限,表示该成员对外部代码和派生类都是不可见的。私有成员只能在类内部访问。
默认情况下,类的成员的访问权限是 private,除非显式指定其他访问权限。
以下是一个示例,演示了不同访问权限修饰符的使用:
class MyClass {
public:
int publicVar; // 公有成员变量
void publicFunc(); // 公有成员函数
protected:
int protectedVar; // 保护成员变量
void protectedFunc(); // 保护成员函数
private:
int privateVar; // 私有成员变量
void privateFunc(); // 私有成员函数
};
void MyClass::publicFunc() {
// 可以访问公有、保护和私有成员
publicVar = 10;
protectedVar = 20;
privateVar = 30;
}
void MyClass::protectedFunc() {
// 可以访问保护和私有成员
protectedVar = 40;
privateVar = 50;
}
void MyClass::privateFunc() {
// 只能访问私有成员
privateVar = 60;
}
int main() {
MyClass obj;
obj.publicVar = 100; // 可以访问公有成员变量
obj.publicFunc(); // 可以调用公有成员函数
//obj.protectedVar = 200; // 不可以访问保护成员变量,会导致编译错误
//obj.protectedFunc(); // 不可以调用保护成员函数,会导致编译错误
//obj.privateVar = 300; // 不可以访问私有成员变量,会导致编译错误
//obj.privateFunc(); // 不可以调用私有成员函数,会导致编译错误
return 0;
}
通过设置适当的访问权限,我们可以控制类的成员在不同的上下文中的可见性和可访问性,从而实现对类的封装和数据隐藏。
猜你喜欢LIKE
相关推荐HOT
更多>>c语言结构类型的定义
在C语言中,结构(Structure)是一种用户定义的数据类型,用于组合多个不同类型的数据成员,形成一个新的复合数据类型。结构类型的定义通常包括以...详情>>
2023-05-31 11:44:00C语言数组指针和指针数组区别
在C语言中,数组指针和指针数组是两个不同的概念。数组指针(PointertoanArray):数组指针是指向数组的指针变量。它存储的是数组的首地址,而不...详情>>
2023-05-31 11:41:00c语言冒泡排序算法
冒泡排序是一种简单的排序算法,它重复地遍历待排序的元素,比较相邻的两个元素,并按照大小进行交换,直到整个序列有序为止。下面是C语言实现...详情>>
2023-05-31 11:39:00c语言#include的用法
在C语言中,#include是一个预处理指令,用于将指定的文件内容包含到当前文件中。它通常用于包含头文件(headerfile)或其他源代码文件。#include...详情>>
2023-05-31 11:37:00cdn加速是什么?它是如何工作的?
CDN(ContentDeliveryNetwork)加速是一种通过分布式部署服务器来提高内容传输速度和用户访问体验的技术。CDN利用位于全球各地的边缘服务器,将网...详情>>
2023-05-31 11:32:00c语言培训问答更多>>
新什么样的C语言培训机构好?
新C语言培训一般要学多久?
新C语言培训都学什么内容?
新C语言培训后的工作方向有哪些?
新C语言培训后能找到工作吗?
新C语言培训班好吗?
新C语言培训注意事项
- 北京校区
- 大连校区
- 广州校区
- 成都校区
- 杭州校区
- 长沙校区
- 合肥校区
- 南京校区
- 上海校区
- 深圳校区
- 武汉校区
- 郑州校区
- 西安校区
- 青岛校区
- 重庆校区
- 太原校区
- 沈阳校区
- 南昌校区
- 哈尔滨校区