概述C++中的 public protected private friend关键字的用法

一个C++类中的变量如果如下关键字作为修饰符.

1. public: 程序的任何地方都可以访问.

2 protected: 只有类本身及其派生类和其友元函数,友元类可以访问.

3 private: 只有类本身及其友元函数,友元类可以访问.

4 friend: 用于定义友元函数友元类. 在类里声明的一个普通函数,在前面加上friend修饰符,这个函数就可以访问该类的一切成员,包括private成员.

下面在看下c++ public private protected关键字

1、当在类的内部使用这三个关键字,表示访问权限:

public: 可以被任意访问。

protected: 只允许子类和本类的成员函数访问。

private: 只允许本类的成员函数访问。

2、当在类的继承层次中访问时:

public: 基类成员的访问权限不会被改变。

protected: 基类的public成员为子类的protected成员,其它成员的访问权限不变。

private: 基类的所有成员在子类中的访问权限变为private。

以上所述是小编给大家介绍的概述C++中的 public protected private friend关键字的用法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 深入理解C++中public、protected及private用法

    初学C++的朋友经常在类中看到public,protected,private以及它们在继承中表示的一些访问范围,很容易搞糊涂.今天本文就来十分分析一下C++中public.protected及private用法.相信对于大家深入掌握C++程序设计会有很大的帮助. 这里我们首先要明白下面几点. 1.类的一个特征就是封装,public和private作用就是实现这一目的.所以: 用户代码(类外)可以访问public成员而不能访问private成员:private成员只能由类成员(类内)和友元访问.

  • 浅析php面向对象public private protected 访问修饰符

    PHP中有三种访问修饰符,分别是:     public(公共的.默认)     protected(受保护的)     private(私有的)public(公共的.默认)在PHP5中如果类没有指定成员的访问修饰符,默认就是public的访问权限.protected(受保护的)被声明为protected的成员,只允许该类的子类进行访问.private(私有的 ) 被定义为private的成员,对于类内部所有成员都可见,没有访问限制.对类外部不允许访问. 图解demo 复制代码 代码如下: cl

  • Ruby中的public、private、protected区别小结

    重点关注private与protected public 默认即为public,全局都可以访问,这个不解释 private C++, "private" 意为 "private to this class", 但是Ruby中意为 "private to this instance". 意思是:C++中,对于类A,只要能访问类A,就能访问A的对象的private方法. Ruby中,却不行:你只能在你本对象的实例中访问本对象的private方法. 因

  • C++中的三种继承public,protected,private详细解析

    三种访问权限 public:可以被任意实体访问 protected:只允许子类及本类的成员函数访问 private:只允许本类的成员函数访问 三种继承方式 public 继承 protect 继承 private 继承 组合结果 基类中 继承方式 子类中 public & public继承 => public public & protected继承 => protected public & private继承 = > private protected &am

  • C++友元(Friend)用法实例简介

    相对于Java而言,友元是C++中特有的一种元素,很多教材上对其介绍的相对较少,因此初学的时候往往不能很快掌握,本文总结了友元的用法和一些注意的地方,供大家参考借鉴.希望能对初学C++的朋友起到一点帮助作用. 操作步骤: 1)在MyFriend类中,将Father类定义成友元 2)写一个Son类继承自Father类 3)在Father类和Son类的构造函数中分别创建MyFriend对象,并定义其内部的三个变量 4)在MyFriend类的构造函数中创建Father对象,并定义其内部的三个变量 结果

  • C++中的friend友元函数详细解析

    友元函数是可以直接访问类的私有成员的非成员函数.它是定义在类外的普通函数,它不属于任何类,但需要在类的定义中加以声明,声明时只需在友元的名称前加上关键字friend. 我们已知道类具有封装和信息隐藏的特性.只有类的成员函数才能访问类的私有成员,程序中的其他函数是无法访问私有成员的.非成员函数可以访问类中的公有成员,但是如果将数据成员都定义为公有的,这又破坏了隐藏的特性.另外,应该看到在某些情况下,特别是在对某些成员函数多次调用时,由于参数传递,类型检查和安全性检查等都需要时间开销,而影响程序的运

  • JS中的public和private对象,即static修饰符

    复制代码 代码如下: //重新封装document对象 var Console={ Write:function(msg){alert(msg);} }; //Person对象 var Person={ _name:"zzl", //static public _age:28, PrintInfo:function(){Console.Write("name:"+Person._name+",age:"+this._age);} //public

  • asp.net 修饰符介绍(关于public、private、protected、internal)

    1.private修饰符 private修饰符用于设置类或类成员的访问权限仅为所属类的内部, private也被称为私有修饰符.某些时候需要访问私有类成员时,可通过get和set访问器读取或修改. 2.protected修饰符 protected修饰符用于设置类或类成员的访问权限仅为所属类及子类的内部. 3.internal修饰符 internal修饰符修饰的类或类成员的访问权限为同一程序集内部,C#默认的类访问修饰符即为internal. 4.public修饰符 public修饰符则为公共访问

  • 概述C++中的 public protected private friend关键字的用法

    一个C++类中的变量如果如下关键字作为修饰符. 1. public: 程序的任何地方都可以访问. 2 protected: 只有类本身及其派生类和其友元函数,友元类可以访问. 3 private: 只有类本身及其友元函数,友元类可以访问. 4 friend: 用于定义友元函数友元类. 在类里声明的一个普通函数,在前面加上friend修饰符,这个函数就可以访问该类的一切成员,包括private成员. 下面在看下c++ public private protected关键字 1.当在类的内部使用这三

  • 详谈PHP中public,private,protected,abstract等关键字的用法

    PHP中常用的关键字 在PHP中包含了很多对函数和类进行限制的关键字,常用的通常有abstract,final,interface,public,protected,private,static等等,下面我们就将对这些进行分析整理各个的用法. 变量与方法的关键字public,private,protected public的权限最大,既可以让子类使用,也可以支持实例化之后的调用, protected表示的是受保护的,访问的权限是只有在子类和本类中才可以被访问到 private 表示的是私有,只能

  • Java 的访问修饰符public,protected,private(封装、继承)

    目录 一.访问控制修饰符 二.封装(Encapsulation) 三.继承(Inheritance) (1) 引出继承 (2) 继承介绍 (3) 继承细节 一.访问控制修饰符 Access level modifiers determine whether other classes can use a particular field or invoke a particular method. 访问级别修饰符决定其他类是否可以使用特定成员变量或调用特定成员方法方法. Java 中有 4 个级

  • 对C#中public、private、protect的区别说明

    访问修饰符都知道是什么,但是在这之前没有深入的去研究和探索,每天都接触的东西应该清楚才可以. 最基础的三个访问修饰符: public .private.protect.在搜索过程中又看到有一种和他们放在了一起,那就是internal.接下来就四个访问修饰符做一个简答的总结和介绍. public公有访问,不受任何限制. private私有访问,只限于本类成员访问,子类.实例都不能访问. protected保护访问,只限于本类和子类访问,实例不能访问. internal内部访问,只限于本项目内访问,

  • JavaScript的public、private和privileged模式

    Summary 私有变量 在对象内部使用'var'关键字来声明,而且它只能被私有函数和特权方法访问. 私有函数 在对象的构造函数里声明(或者是通过var functionName=function(){...}来定义),它能被特权函数调用(包括对象的构造函数)和私有函数调用. 特权方法 通过this.methodName=function(){...}来声明而且可能被对象外部的代码调用.它可以使用:this.特权函数() 方式来调用特权函数,使用 :私有函数()方式来调用私有函数. 公共属性 通

  • Java中的拦截器、过滤器、监听器用法详解

    本文实例讲述了Java中的拦截器.过滤器.监听器用法.分享给大家供大家参考,具体如下: 一.拦截器 :是在面向切面编程的就是在你的service或者一个方法,前调用一个方法,或者在方法后调用一个方法比如动态代理就是拦截器的简单实现,在你调用方 法前打印出字符串(或者做其它业务逻辑的操作),也可以在你调用方法后打印出字符串,甚至在你抛出异常的时候做业务逻辑的操作. 1.Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截器是可插拔的,

  • Android开发中解析xml文件XmlUtils工具类与用法示例

    本文实例讲述了Android开发中解析xml文件XmlUtils工具类与用法.分享给大家供大家参考,具体如下: 1. xmlUtil工具类 package com.example.xmlpaserutil.util; import java.io.InputStream; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.List; import org.xmlpull.v1.XmlPullP

随机推荐