栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

友元、异常

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

友元、异常

学习了友元和异常的相关内容,在此做个笔记。

一、友元

一个类可以拥有友元函数,也可以拥有友元类

友元函数或者友元类的所有方法都可以访问原始类的私有成员和保护成员

友元只能由类自己定义,不能从外部强加友情,所以与面向对象的编程思想不矛盾

友元类的场景:

电视机与遥控器:遥控器可以更换频道,还可以控制输入源等,适合作为电视的友元类

友元声明可以在类的私有,保护或者公有部分,位置无关紧要

可以只让类的某一成员函数作为另一个类的友元函数,不过声明的时候需要用到前向声明(c++ primer plus p492有介绍)

A可以成为B的友元类,同时B也可以成为A的友元类,不过要注意前向声明,涉及到编译的问题,要让A的内容在编译之前知道B是什么东西

二、异常

主要说一下异常机制:

对异常的处理有三部分:

1、引发异常

2、使用处理程序捕获异常

3、使用try块

需要注意的点:

在throw抛出一个异常后,catch的数据类型应与throw的一致才可以进行捕获,不然异常不会捕获会导致程序终止。

throw会触发类对象的析构,这里涉及到栈解退。(c++ primer plus p508有介绍)

如果对于多重继承进行异常处理,捕获异常的顺序应该与继承的层次 顺序相反。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1005329.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号