Fork me on GitHub
摘要: 关于OOP1,继承可以是单一继承或多重继承,每一个继承连接可以是public、protected或private,也可以是virtual或non-virtual。2,成员函数的各个选项:virtual或non-virtual或pure-virtual。3,成员函数和其他语言特性的交互影响:缺省参数值... 阅读全文
posted @ 2015-11-22 17:12 GeekerLou 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 条款26:尽可能延后变量定义式的出现时间有些对象,你可能过早的定义它,而在代码执行的过程中发生了导常,造成了开始定义的对象并没有被使用,而付出了构造成本来析构成本。所以我们应该在定义对象时,尽可能的延后,甚至直到非得使用该变量前一刻为止,应该尝试延后这份定义直到能够给它初值实参为止。这样做的好处是:... 阅读全文
posted @ 2015-11-22 17:07 GeekerLou 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 条款18:让接口容易被正确使用,不易被误用1,好的接口很容易被正确使用,不容易被误用。你应该在你的所有接口中努力达成这些性质。2,“促进正使用”的办法包括接口的一致性,以及与内置类型的行为兼容。3,“阻止误用”的办法包括建立新类型,限制类型上的操作,束缚对象值,以及消除客户的资源管理责任。4,sha... 阅读全文
posted @ 2015-11-22 17:06 GeekerLou 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 资源:动态分配的内存、文件描述器、互斥锁、图形界面中的字型与笔刷、数据库连接以及网络sockets等,无论哪一种资源,重要的是,当你不再使用它时,必须将它还给系统。条款13:以对象管理资源当我们向系统申请资源后,一定要记得释放,不然就容易发生内存泄漏。但是意识到这样一件事并不是很容易,比如我们是通过... 阅读全文
posted @ 2015-11-22 17:05 GeekerLou 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 条款05:了解C++默默编写并调用哪些函数默认构造函数、拷贝构造函数、拷贝赋值函数、析构函数构成了一个类的脊梁,只有良好的处理这些函数的定义才能保证类的设计良好性。当我们没有人为的定义上面的几个函数时,编译器会给我们构造默认的。当成员变量里有const对象或引用类型时,编译器会不能合成默认的拷贝赋值... 阅读全文
posted @ 2015-11-22 17:04 GeekerLou 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 条款01:视C++为一个语言联绑C++的四个语言层次:C:C++是以C为基础的。基本数据类型、语句、预处理器、数组、指针等统统来自C。Oject-Oriented C++:面向对象这一特性包含了:类,封装(声明与实现相分离),继承(多继承和多重继承、构造函数、析构函数、拷贝构造函数、拷贝赋值运算符)... 阅读全文
posted @ 2015-11-22 17:02 GeekerLou 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 第一部分 对象成员与对象数组从一个简单的例子开始说起,首先定义一个Coordinate的类,里面有两个公有的成员变量m_iX和m_iY,分别代表横坐标和纵坐标。接下来,定义一个对象数组cood和一个指向一个对象数组的指针p:那么,coord和p究竟有何不同呢?初始化的时候,先初始化m_CoorA和m... 阅读全文
posted @ 2015-11-22 16:34 GeekerLou 阅读(334) 评论(0) 推荐(0) 编辑