zoukankan      html  css  js  c++  java
  • C++的public、protected、private 详解

    1、对于单个类来说,这三个范围限定符的意义如下:
    公有成员(public member) 在程序的任何地方都可以被访问。实行信息隐藏的类将其public 成员限制在成员函数上,这种函数定义了可以被一般程序用来操纵该类类型对象的操作
    私有成员(private member) 只能被成员函数和类的友元访问。实行信息隐藏的类把其数据成员声明为private
    被保护成员(protected member) 对派生类derived class 就像public 成员一样,对其他程序则表现得像private

    总之,对于单个类的成员函数来说,无论成员变量是public、protected还是private,他都可以访问,但是,对于类的对象(也就 是类的实例 instance)来说,只能访问public类型的变量和成员函数,不能访问protected和private类型的

    2、对于类继承来说,也有public、protected和private三种方式的继承,这三种继承的定义如下(以下都假设A是基类,B是派生类):

    public继承:A类中public类型成员在B中还是public的,A类中protected类型成员在B中是protected的,A类中private类型成员在B中不可见

    protected继承:A类中public类型的成员在B中变成protected类型,A类中protected类型的成员在B中还是protected类型,A类中private类型的成员在B中不可见

    private继承:A类中public和protected类型的成员在B中全变成private类型,A类中private类型的成员在B中不可见
  • 相关阅读:
    16. 3Sum Closest
    17. Letter Combinations of a Phone Number
    20. Valid Parentheses
    77. Combinations
    80. Remove Duplicates from Sorted Array II
    82. Remove Duplicates from Sorted List II
    88. Merge Sorted Array
    257. Binary Tree Paths
    225. Implement Stack using Queues
    113. Path Sum II
  • 原文地址:https://www.cnblogs.com/super119/p/2005625.html
Copyright © 2011-2022 走看看