02 2009 档案

《Effective C++》读书笔记10:令operator=返回一个引用指向*this
摘要:一般的连锁赋值方式: int x, y, z; x = y = z = 15;//等价于x = (y = (z = 15)); 当我们要实现自己的operator=操作时,就需要返回一个引用,该引用指向了操作符左侧的参数; Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlight... 阅读全文

posted @ 2009-02-26 22:12 月光笛手 阅读(355) 评论(0) 推荐(0)

《Effective C++》读书笔记09:绝不在构造和析构过程中调用virtual函数
摘要:首先明确一下,对于一个继承体系,构造函数是从基类开始调用了,而析构函数则正好相反,从最外层的类开始。 对于在构造函数中调用virtual函数,先举个例子: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1 class Transaction //所... 阅读全文

posted @ 2009-02-25 08:46 月光笛手 阅读(975) 评论(3) 推荐(1)

《Effective C++》读书笔记:别让异常逃离析构函数
摘要:这节和异常有关,这一块是我不太熟悉的,只能先把自己理解的记录下来。 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1 class Widget 2 { 3 public: 4 5 ~Widget() {} //假设这里会吐出一个异... 阅读全文

posted @ 2009-02-24 08:28 月光笛手 阅读(983) 评论(0) 推荐(1)

《Effective C++》读书笔记07:为多态基类声明virtual析构函数
摘要:这个问题在实践中偶尔会碰到,设计一个TimeKeeper基类和一些派生类来记录时间: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1 class TimeKeeper 2 { 3 public: 4 TimeKeeper(); 5 ... 阅读全文

posted @ 2009-02-23 14:19 月光笛手 阅读(1432) 评论(1) 推荐(1)

《Effective C++》读书笔记06:如果不要编译器自动生成的函数,就明确拒绝
摘要:有时候,我们需要定义一些独一无二的类,这些类是如此的特别,以至于我们不能将其拷贝或者赋值: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1 class Family {}; 2 3 Family mine; 4 Family your; 5 Fa... 阅读全文

posted @ 2009-02-19 12:37 月光笛手 阅读(1729) 评论(1) 推荐(0)

《Effective C++》读书笔记05:c++默默为您编写的函数
摘要:这一部分的条款讲的都是类的构造/析构/赋值函数的使用。 当你写下一个: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1 class Empty {}; 经过了编译器的处理,就好像你写下了如下的代码: Code highlighting produc... 阅读全文

posted @ 2009-02-18 16:13 月光笛手 阅读(1520) 评论(1) 推荐(0)

那些我喜欢的外国电影
摘要:1. 搏击俱乐部:Do not talk about the fight club! 2. 燃情岁月A legend of the fall:,爱情、亲情、友情交汇在唯美的苏格兰风笛声中 3. 肖申克的救赎:有些人,有些东西是关不住的 4. If only、加菲猫: 非常喜欢女主角 5. 教父1:沉着、冷酷的黑社会... 阅读全文

posted @ 2009-02-17 18:29 月光笛手 阅读(276) 评论(1) 推荐(0)

《Effective C++》读书笔记04:确保对象在使用之前被初始化
摘要:我自己在写代码的时候也经常会遇到忘记初始化某对象的问题,而且这些错误比较难以调试,Meyers提出了一些避免这些错误的解决方法: 1.手工初始化所以内置类型: 这一条很好理解,对于int,enum等内置类型,在使用前一定要初始化。 2.对于类类型等用户自定义的对象,使用成员初值列初始化所有的对象: Code highlighting produced by Actipro CodeHighli... 阅读全文

posted @ 2009-02-17 11:04 月光笛手 阅读(1630) 评论(1) 推荐(1)

2.17-4.17计划
摘要:1.学完《Effective C++》,并做笔记; 2.学习《openGL超级宝典》,并学习图形学算法,将消隐和光线跟踪用openGL实现; 3.学习photoshop技术,听完讲座录音后开始实践,学习《WoW》; 4.买新的自行车,并开始游玩杭州周边,这周将游玩计划订好,4月份骑车去黄山; 5.用c++和Qt写一个闹钟,这周确立需求; 阅读全文

posted @ 2009-02-17 09:04 月光笛手 阅读(176) 评论(0) 推荐(0)

《Effective C++》读书笔记03:多才多艺的const
摘要:const是我们写c++代码时的常客,对于那些我们不希望修改的对象,最好用const进行修饰。 1.下面来看看一些惯用法: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1 char greeting[] = "Hello"; 2 char* p =... 阅读全文

posted @ 2009-02-16 19:28 月光笛手 阅读(455) 评论(2) 推荐(0)

《Effective C++》读书笔记02:用const,enum,inline减少#define出场机会
摘要:以前学习c语言时,老师教导我们,对于数字最好用宏(#define)来定义它。以至于一直习惯于#define Age 12这样的写法。 在c语言的环境中,这确实是增加程序可读性的有效做法,可是在c++中,可以有更优美的实现方式。 1.当你写下 Code Code highlighting produced by Actipro CodeHighlighter (freeware)http://www... 阅读全文

posted @ 2009-02-15 14:05 月光笛手 阅读(1260) 评论(5) 推荐(0)

《Effective C++》读书笔记01:视c++为一个语言联邦
摘要:都说c++难学。确实,这是由于c++过于庞大了,Meyers将庞大的c++分成了四个部分: 1.c语言; 2.经典的面向对象c++:包括了class,封装,继承,多态,虚函数等经典的OO思想; 3.c++模板编程,也称为泛型编程,这一部分相对内容较新,我个人正在学习《C++ Templates》加深理解; 4.STL:vector,list,map,iterator相信大家都很熟悉了吧:) 你看,... 阅读全文

posted @ 2009-02-15 13:29 月光笛手 阅读(831) 评论(2) 推荐(0)

导航