C++-类、封装性、成员函数

struct将所有成员都默认为public权限,这很不安全。因此C++引进了功能与struct相同但更安全的数据类型——类。说明:

  • 类声明中的访问限定符没有先后次序,通常将private放在后面,将public放在前面,方便了解类的可访问接口。
  • 同一个类中,访问限定符出现次数没有限制。
  • 数据成员和成员函数都可以设置为public、private、protected属性。
  • 数据成员可以是任何数据类型,也可是一个类的对象或指向对象的指针、引用,但不能是自动(auto)、寄存器(register)和外部(extern)存储类型。
  • 声明类时,不能为数据成员赋初值,因为此时还没有为其分配内存。
  • C++中的struct也是一种类,他与class具有相同功能,用法完全相同,唯一的区别是,没有指定成员的访问权限时,struct中的成员具有public权限,而class中的成员则具有private权限。
    ::为域限定符。

成员函数

成员函数的定义

一种是在声明类时就给出成员函数的定义,以这种方式定义的成员函数若符合内联函数的条件就会被处理为内联函数;另一种是在声明类时,只声明成员函数的原型,然后在类的外部实现成员函数。
若在类外成员函数的实现前加上关键字inline,该成员函数就被定义为内联函数。(加在返回类型前)

常量成员函数

为了禁止成员函数修改数据成员的值,可以将它设置为常量成员函数。方法就是在函数原型后面加上const。说明:

  • 只有类的成员函数才能定义为常量函数,普通函数不能。
  • 常量参数与常量成员函数是有区别的,常量参数限制函数对参数的修改,但与数据成员是否被修改无关。

类的封装

类的封装性可以从两方面认识:

  • 类能够把数据和算法(操作数据的函数)组合在一起,构成一个不可分割的整体;
  • 类具有信息隐藏的能力,能够有效的把类的内部数据隐藏起来,使外部函数只有通过类的公有成员才能访问类的内部数据。

封装使类成为一个具有内部数据的自我隐藏能力、功能独立的软件模块。
类的公有成员也称为类的接口,外部函数要访问类的内部成员,只有通过类的公有成员才能实现。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值