美文网首页C++程序员
类&对象(一)

类&对象(一)

作者: 山鬼谣弋痕夕 | 来源:发表于2017-08-30 11:56 被阅读0次

C++成员函数

类的成员函数是指那些把定义和原型写在类定义内部的函数,就像类定义中的其他变量一样。类成员函数是类的一个成员,它可以操作类的任意对象,可以访问对象中的所有成员。

函数的原型必须在类中进行定义,函数体可以在类中定义,也可在类的外部定义函数体,通常把函数体写在类的外部,只有在成员函数很短的时候才写在类的里面。函数的定义和函数体都在类外部的时候为全局函数。

在类的外部使用范围解析运算符 :: 定义该函数

下面以书为例子展示了成员函数的使用方法:

成员函数的使用方法 对成员函数的调用

运行的结果为:


30  35  这两本书是同一本书


小贴士:当一个函数对数据没有修改,不做变化的时候,使用const修饰函数使其成为常量成员函数,具有更高的保险系数。

类访问修饰符(public、private、protected)

数据封装是面向对象编程的一个重要特点,它防止函数直接访问类类型的内部成员。

类成员的访问限制是通过在类主体内部对各个区域标记 public、private、protected 来指定的。关键字 public、private、protected 称为访问修饰符。

一个类可以有多个 public、protected 或 private 标记区域。每个标记区域在下一个标记区域开始之前或者在遇到类主体结束右括号之前都是有效的。

成员和类的默认访问修饰符是 private

公有(public)成员

可以不使用任何成员函数来设置和获取公有变量的值

可以不使用任何成员函数来设置和获取公有变量的值

私有(private)成员

私有成员变量或函数在类的外部是不可访问的,甚至是不可查看的。只有类和友元函数可以访问私有成员。

私有成员变量 必须使用任何成员函数来设置和获取公有变量的值

保护(protected)成员

保护成员变量或函数与私有成员十分相似,但有一点不同,保护成员在派生类(即子类)中是可访问的。后面的继承会看到

继承中的特点

有public, protected, private三种继承方式,它们相应地改变了基类成员的访问属性。

继承方式特点

1.public 继承:基类 public 成员,protected 成员,private 成员的访问属性在派生类中分别变成:public, protected, private

2.protected 继承:基类 public 成员,protected 成员,private 成员的访问属性在派生类中分别变成:protected, protected, private

3.private 继承:基类 public 成员,protected 成员,private 成员的访问属性在派生类中分别变成:private, private, private

不管是哪一种继承方式,在派生类内都可以访问基类的非私有成员,基类的私有成员虽然被继承了,但是并不是可见的。而对于保护和私有继承方式,类外对象并不能访问基类的成员,公有继承方式下可以访问基类的公有成员。

但无论哪种继承方式,上面两点都没有改变:

1.private 成员只能被本类成员(类内)和友元访问,不能被派生类访问;

2.protected 成员可以被派生类访问。

感到有一点儿帮助就给颗小心♥吧

相关文章

  • iOS入门小知识-类对象

    类对象 类其实也是一个对象,是Class类型的对象,简称“类对象”。类名就代表着类的对象,每个类只有一个类对象。 ...

  • 类&对象(一)

    C++成员函数 类的成员函数是指那些把定义和原型写在类定义内部的函数,就像类定义中的其他变量一样。类成员函数是类的...

  • iOS-对象、isa指针、SuperClass

    OC中对象分类 分为三类:实例对象、类对象、元类对象 instance对象(实例对象) class对象(类对象) ...

  • isa 和 superclass

    实例对象的 isa 指向类对象,类对象的 isa 指向元类对象,元类的isa 指向基类的元类对象,基类的元类对象的...

  • 对象、类对象和元类对象

    http://www.tuicool.com/articles/mmyuUr http://blog.csdn.n...

  • Runtime 学习笔记

    要点一:对象,类,元类关系 每个对象都有一个类对象 每个类对象有一个元类对象 每一个对象都有一个isa指针,这个指...

  • 类的结构分析

    对象、类、元类、根元类 对象是类的实例,对象是以类为模版来创建的。类的实质上也是一个对象,类是元类的实例对象。类对...

  • OC对象解析

    一、OC对象分为三类 1、实例对象 :instance对象 2、类对象: class对象 3、元类对象 :meta...

  • Python的类属性,实例属性,类方法,实例方法,静态方法

    什么是类对象,什么是实例对象类对象: 类名就是类对象实例对象:类创建的对象 类属性,实例属性类属性: 就是类所拥有...

  • RunTime底层原理

    1.isaisa:实例对象的isa指向类对象,类对象的isa指向元类对象。元类对象isa执行基类元类对象。2.方法...

网友评论

    本文标题:类&对象(一)

    本文链接:https://www.haomeiwen.com/subject/unpzdxtx.html