Effective C++读书笔记(14)
来源:互联网 发布:百变魔图软件下载 编辑:程序博客网 时间:2024/05/17 01:53
条款21:必须返回对象时,别妄想返回其reference
当函数要返回一个对象时,不要返回pointer或者reference指向local stack对象,会返回一个未定义的pointer或reference;也不要返回reference指向一个heap-allocated对象,会造成内存泄露;也不要返回pointer或者reference指向local static对象,在需要多个对象时会造成对象被覆盖而丢失原来的数据。总之,在返回对象时就直接一个新对象(pass by value)。
条款22:将成员变量声明为private
为什么采用private的原因:1、语法一致性:客户访问class成员时不需要记住是否该使用小括号;2、访问控制:使用函数可以让你对成员变量的处理有更精确的控制:可以控制他的读写性;3、封装性:将成员变量隐藏在函数接口的后面,可以为“所有可能的实现”提供弹性,确保class的约束条件总是会获得维护并且保留了日后变更实现的权利。
protected满足“语法一致性”和“访问控制”,但是并不比public更具有封装性。(封装性与“其内容改变时可能造成的代码破坏量”成反比,所谓改变也许是从class中移除它)
public,protected,private的访问范围:private:该类中的函数,其友元函数;protected:该类中的函数,子类中的函数,友元函数(不能被该类的对象访问);public:该类中的函数,子类的函数,友元函数,该类的对象;
类继承后方法属性的变化:private属性不能被继承。
使用private继承,父类的protected和public在子类中变为private。
使用protected继承,父类的protected和public在子类中变为protected。
使用protected继承,父类的protected和public在子类中不变。
- 《Effective C++》读书笔记
- 《Effective C++》读书笔记
- 《Effective c++》读书笔记
- 《more effective c++》读书笔记
- <<effective c++>> 读书笔记
- 《Effective C++》读书笔记
- 《Effective C++》读书笔记
- Effective C++(1)读书笔记
- Effective C++(2)读书笔记
- 《Effective C++》读书笔记
- 《Effective C++》读书笔记
- 《effective c++》读书笔记【一】
- 《effective c++》读书笔记1
- 《effective c++》读书笔记2
- 《effective c++》读书笔记3
- 《effective c++》读书笔记4
- 《effective C++》读书笔记
- Effective C++-读书笔记
- 关于解析XML的一些杂谈
- hdu——1272——小希的迷宫(数)
- MySQL临时表
- 简谈--动态规划2
- poj 3667 Hotel(此题跟poj 1823有共同点,都属于区间合并问题)
- Effective C++读书笔记(14)
- 如何将Cling构建在Eclipse上
- 性能压测工具 ...http_load//
- 强大的矢量图形库:Raphael JS 中文帮助文档及教程
- Apache和Tomcat区别
- 一些常用函数,as:strnstr,memchr。。。。。
- Morley's Theorem 计算几何
- 仿射密码
- 【WIndows核心编程学习笔记】线程栈