
effective c++
jackytse_
不以物喜 . 不以己悲
展开
-
Effective c++学习笔记——条款5:了解C++默默编写并调用哪些函数
Know what functions C++ silently and calls 今天继续学习一个条款,看到了本条款,让我更加了解了C++的一些内部运行机理,思考了一番,觉得C++在这方面设计真的十分严密,不亏是一个很优秀的语言,让C++一直是很受欢迎的语言。转载 2011-09-12 11:40:29 · 648 阅读 · 0 评论 -
more effective c++笔记1-----Item M2:尽 量使用C++风格的类型转换
1.一些重要的性质 //1. dynamic_cast 转换的两个类 需要有虚函数 //2. dynamic_cast 如果转换的是两个实例指针,转换失败返回的是NULL空 CWeget *pBase = new CWeget; CChildWeget *pChild = new CChildWeget; CWeget *ptrBase = dynamic_cast(pChild);原创 2012-12-01 21:53:58 · 927 阅读 · 0 评论 -
C++经典书籍推荐,附详细介绍
C++是一门广泛用于工业软件研发的大型语言。它自身的复杂性和解决现实问题的能力,使其极具学术研究价值和工业价值。和C语言一样,C++已经在许多重要的领域大获成功。 然而,一个不可否认的现实是,在低阶程序设计领域,C++挤压着C同时也在承受着C的强烈反弹,而在高阶程序设计领域,Java和C#正在不断蚕食着C+ +的地盘。也许C++与C合为一体永远都是一个梦想,也许Java和C#转载 2012-02-13 00:01:24 · 2772 阅读 · 0 评论 -
Effective c++ 学习笔记——条款04:确定对象被使用前已先被初始化
Make sure that objects are initialized before they're used. 昨天就已经把第四条款看完了,初始化这篇内容非常非常丰富,讲解了很多,也让我的一些疑惑解开了。由于经常加班,写作时间比较少,我今天看写完这篇文章,还要转载 2011-09-12 11:39:40 · 686 阅读 · 0 评论 -
Effective C++学习笔记——条款03:尽可能使用const
今天开始学习条款三,详细解读一下,让自己有更大的收获。 今天开始学习条款三,详细解读一下,让自己有更大的收获。 const 多才多艺,可以用在classes外部修饰global和namespace 作用域中的常量。或修饰文件、函数、或区块作用域中被声明的为stati转载 2011-09-12 11:38:50 · 1415 阅读 · 0 评论 -
Effective C++ 读书笔记——条款2:尽量以const,enum,inline替换#define
中“宁可以编译器替换预处理”算是另一种提法,不过这个应该是概括性的说法吧 主要事项注意如下: 1用const double AspectRatio=1.653;代替#define ASPECT_RATIO 1.653 原因是预编译时define会被简单的替换,这样在编转载 2011-09-12 11:37:27 · 885 阅读 · 0 评论 -
Effective c++ 学习笔记——之条款1:视C++为一个语言联邦
今天开始学习Effective c++,保持一周两个条目的学习。 1.让自己习惯C++ 前天慕名买了这本传说中很神的书,有评论说学c++的分两种人,一种人是看过Effective c++,另一种人是没看过Effective c++。本来我是从java转向C++的转载 2011-09-12 11:35:02 · 831 阅读 · 0 评论 -
Effective c++学习笔记——条款11:在operateor=中自我赋值
Handle assignment to self in operator= 本条款的核心是关于c++对象的自我赋值,既然说是自我赋值,那么就会产生一些你意想不到的问题。首先看一下很有意思的“自我赋值”,简单例子 // self_opera.cpp转载 2011-09-12 12:19:37 · 998 阅读 · 0 评论 -
Effective c++学习笔记——条款10:令operator=返回一个*this的引用
Have assignment operators return a reference to *this 从题目,我们就要记住这条信息,让你的operator=函数return *this; 基本类型int、char等都提供了连锁赋值,并采用右结合律。 int x, y,转载 2011-09-12 12:18:57 · 958 阅读 · 0 评论 -
Effective c++学习笔记——条款09:绝不在构造和析构过程中调用virtual函数
Never call virtual functions during construction or destruction 这是本条款的核心,不该在构造函数和析构函数期间调用virtual函数,因为存在不可预期的结果。为什么会这么说呢?首先看一下下面的例子:转载 2011-09-12 12:18:28 · 841 阅读 · 0 评论 -
Effective c++学习笔记——条款08:别让异常逃离析构函数
Prevent exceptions from leaving destructors 本条款主要讲述当我们写代码的时候,如果出现了异常,让我们如何对异常处理,如何更加安全的处理异常。让我们的代码看起来更加完美。 1、问题来源转载 2011-09-12 12:17:43 · 672 阅读 · 0 评论 -
Effective c++学习笔记——条款07:为多态基类声明virtual析构函数
Declare destructors virtual in polymorphic base classes 1、为什么要申明虚函数 C++程序设计中通常会存在一个基类有多个派生类型,而基类中的存在的大都是纯虚函数,需要派生类型实现。而这样的情况转载 2011-09-12 12:15:40 · 697 阅读 · 0 评论 -
Effective c++学习笔记——条款6,不想自动生成函数,要明确拒绝
Explicitly disallow the use of complier-generated functions you do not want 上一条款我们已经知道,编译器会自动给我生成一些函数,那么当我们不希望class产生提供的方法,只要不声明对应函转载 2011-09-12 11:42:24 · 600 阅读 · 0 评论 -
more effective c++笔记2-----Item M8:理 解各种不同含义的new和delete
一.说在前面的话 1.new operator:new 是一个操作符 2.operator new:new 操作符在进行内存分配时所调用的函数,通过这个函数来最终完成内存的分配,函数operator new 通常这样声明:void * operator new(size_t size),注意返回的是一个void*类型,但这个函数与普通函数又有些区别,他是一个重载操作符函数,类似于 bool原创 2012-12-05 04:02:41 · 1440 阅读 · 0 评论