9点C++(5)
来源:互联网 发布:手机音乐可视化软件 编辑:程序博客网 时间:2024/05/16 06:38
1、 类可以允许其他类或者函数访问它的非公有成员,方法是令其他类或者函数成为它的友元(friend),如果类想把一个函数作为它的友元,只需增加一条以friend关键字开始的函数声明语句即可;
2、 友元声明只能出现在类定义的内部,但在类内出现的具体位置不限。友元不是类的成员也不受它所在的区域访问控制级别的约束;
3、 一般来说,最好在类定义的开始或结束前的位置集中声明友元;
4、 封装的益处:确保用户代码不会无意间破坏封装对象的状态,被封装类的具体实现细节可以随时改变,而无需调整用户级别的代码,防止由于用户原因造成的数据破坏;
5、 可变数据成员:在一个const成员函数内,可以通过在变量的声明中加入mutable关键字做到数据成员可变;
6、 一个const成员函数如果以引用的形式返回*this,那么它的返回类型将是常量引用;
7、 当一个成员调用另一个成员时,this指针在其中隐式地传递,当一个非const的成员函数调用一个const成员函数时,this指针将隐式地从指向非const指针转换成指向指向const指针;
8、 不同名的两个类即使它们的成员一模一样,这两个类也是两个不同的类,即使两个类的成员列表完全一致,它们也是不同的类型,对于一个类来说,它的成员和其他任何类的成员都不是一回事;
9、 我们可以仅仅声明一个类而暂时不调用它,这种声明被称为前向声明(forward declaration),仅仅声明的类在声明之后,定义之前是一个不完全类型;(class Screen)
阅读全文
0 0
- 9点C++(5)
- 9点C++(1)
- 9点C++(2)
- 9点C++(3)
- 9点C++(4)
- 9点C++(6)
- const 注意点(C)
- C/C++中的序列点(详解)
- C/C++ 笔记(零碎点)
- C语言注意点收集(待续)
- 24点小游戏(c语言)
- C语言必记要点(不断更新)
- 24点算法源码(C#)
- Objective-C之注意点(一)
- 24点问题(穷举法/C++)
- akoj-1291-决战21点(C#)
- 基础c注意点(一)
- Objective-C ---点语法 (梳理整理)
- js 之 prototype原型 理解
- 8. String to Integer (atoi)
- word转pdf
- 华为机试——坐标移动
- beego框架介绍
- 9点C++(5)
- 几种排序算法的思想
- git stash和git stash pop
- 理解OAuth 2.0
- activemq
- 七月算法深度学习 第三期 学习笔记-第九节 强化学习与Deep Q-Network
- JVM 的类初始化机制
- 关于如何写一个数据协议(草稿)
- 排序算法——插入排序