当前位置: 首页 > wzjs >正文

免费行情软件app网站mnw下载手机制作图片软件

免费行情软件app网站mnw下载,手机制作图片软件,汽车网站开发毕业设计论文,高端网站建设系统在C中,public、private 和 protected 是用于控制类成员(变量和函数)访问权限的关键字。它们决定了类成员在代码中的可见性和可访问性。在学习时候,对于public是最容易理解的,对于private也好理解,但是对于p…

在C++中,publicprivate 和 protected 是用于控制类成员(变量和函数)访问权限的关键字。它们决定了类成员在代码中的可见性和可访问性。在学习时候,对于public是最容易理解的,对于private也好理解,但是对于protected总是会有混淆,整理如下;

以下是它们的详细规则和应用场景:

1. public(公有成员)

  • 规则

    • 公有成员可以在任何地方被访问,包括:

      • 类内部。

      • 类外部的代码(通过对象或指针)。

      • 派生类(子类)。

  • 示例

class MyClass {
public:int publicVar; // 公有变量void publicMethod() {// 可以在任何地方调用}
};int main() {MyClass obj;obj.publicVar = 10;       // 合法:外部直接访问obj.publicMethod();       // 合法:外部调用return 0;
}

2. private(私有成员)

  • 规则

    • 私有成员只能在类的内部或类的**友元(friend)**中访问。

    • 派生类无法直接访问基类的私有成员

  • 设计意义

    • 封装类的内部实现细节,防止外部直接修改关键数据。

    • 例如:类的内部状态、辅助工具函数等。

  • 示例

class MyClass {
private:int privateVar; // 私有变量void privateMethod() {// 只能在类内部或友元中调用}public:void setVar(int value) {privateVar = value;  // 合法:类内部访问私有成员}
};int main() {MyClass obj;// obj.privateVar = 10;    // 非法:外部无法访问私有成员// obj.privateMethod();    // 非法:外部无法调用私有方法obj.setVar(10);           // 合法:通过公有方法间接修改私有变量return 0;
}//下面考虑private修饰符,在子类的进一步示例
class MyClassChild public MyClass {public:void childSetVar(int value) {// privateVar = value;  // 非法,在子类中即便通过子类的自定义函数也无法访问setVar(value); // 合法,通过父类的方法可以访问private}
};

3. protected(保护成员)

  • 规则

    • 保护成员可以在类的内部友元以及派生类中访问。

    • 类外部的代码(非友元)无法直接访问

  • 设计意义

    • 允许派生类扩展基类的功能,同时保持对外的封装性。

    • 例如:基类中需要被子类重写的方法或需要被子类直接访问的数据。

  • 示例

class Base {
protected:int protectedVar; // 保护变量
};class Derived : public Base {
public:void modifyVar() {protectedVar = 20;  // 合法:派生类内部访问基类的保护成员}
};int main() {Derived obj;// obj.protectedVar = 10;  // 非法:外部无法直接访问保护成员obj.modifyVar();          // 合法:通过派生类的公有方法间接修改return 0;
}

4. 总结(不考虑友元场景)

  • public:开放接口,供所有代码使用。

  • private:完全封装,仅限制在声明变量的类内成员函数可以访问。

  • protected:半开放接口,对于子类成员函数开放;子类和基类的成员函数都可以访问

  • 继承方式决定了基类成员在派生类中的“可见性上限”。

  • 如果在BASE类中定义了一个变量;  再定义一个子类,子类中对于该变量访问规则如下

基类子类
public任何支持的语法进行访问任何支持的语法进行访问
private只有基类成员函数可以访问不可见,只能通过父类成员函数访问
protected只有基类成员函数可以访问可见,可以在子类的成员函数中进行访问;

http://www.dtcms.com/wzjs/608484.html

相关文章:

  • 做针对国外的网站德宏企业网站建设公司6
  • 上海网站建设 劲晟wordpress设置文章排序
  • 网站的按钮怎么做WordPress对接易支付
  • 综述题建设网站需要几个步骤网站上图片不能下载 该怎么做
  • 搜索引擎排名公司网站关键词优化兰州装饰公司十强
  • 徐州小学网站建设个人网页在线制作app
  • 电子产品网站建设模板四博网站备案
  • 做地理题的网站做网站网页的公司
  • 佛山网站的建设网站改版seo建议
  • 建立一个网站如何开通账号如何自己制作一个网站
  • 网站的布局有哪些价格划算的做pc端网站
  • 静态网站挂马公司网站建设意见
  • 山东建设网站个人域名可以做KTV网站吗
  • 微信群推广网站天津市武清区住房建设网站
  • 怎么做自己的优惠券网站开个平台需要多少钱
  • 个人博客网站制作图片网易企业邮箱入口 官网
  • 宣传型网站建设上海做外贸网站
  • 鲜花网站建设结构布局公司要我做网站_没有公司的材料是不是不可以做
  • 电影网站建设方案ppt模板下载cms开发教程
  • 深圳企业推广网站wordpress ss打不开
  • Python建网站的步骤广州外包公司都有哪些
  • 哪有那样的网站wordpress 网速
  • 网站交互方式怎么注册微网站吗
  • 口碑好网站建设公司电话武邑网站建设
  • 衡水网站建设公司联系电话淘宝搜索关键词查询工具
  • 旅游网站首页如何获取wordpress后台登入网址
  • 网站建设和微信小程序在线制作免费生成图片文字
  • 奇网企业网站管理系统建设银行网站个人中心
  • iis v6 新建网站互联网创业项目app
  • 深圳网站制作公司招聘网站建设后期维护小魔仙