
C++ primer
文章平均质量分 58
sdcyzjq
这个作者很懒,什么都没留下…
展开
-
C++ primer 第四章
1. 定义数组时,元素的个数不能用非const变量或者要到运行阶段才能知道值的const变量。 2. 预处理器变量NULL其值为0,初始化为NULL等效于初始化为0值。 3. void*指针可以保存任何类型对象的地址,只支持于另一个指针进行比较、向函数传递void原创 2011-02-11 21:47:00 · 353 阅读 · 0 评论 -
C++ primer 第十二章
1. 将const加在形参表之后,就可以将成员函数声明为常量。const成员函数不能改变所操作对象的数据成员。const必须同时出现在声明和定义中,跟static不同。 2. 在类内部定义的成员函数,将自动作为inline处理。 3. 因为只有当类定义体完成后才能原创 2011-10-07 10:46:05 · 458 阅读 · 0 评论 -
C++ primer 第十一章
1. 除了普通的迭代器,还有下面三种迭代器: 插入迭代器,实现插入元素的功能。又分为这样三种:(1) back_iterator,创建实用push_back实现插入的迭代器。(2) front_iterator,使用push_front实现插入。(3) inse原创 2011-10-06 19:27:40 · 507 阅读 · 0 评论 -
C++ primer 第十四章
1. 不能改变内置类型操作符的含义,也不能为内置类型添加新的操作符。如,不能定义接受两个数组类型操作数的 operator+ 。 2. 作为类成员的重载函数,this形参隐含作为第一个操作数,所以形参列表看起来会比操作数数目少1 。 3. 对于改变对象状态或者与给定类型紧密联系的操作符,如自增、自减、解引用,通常定义为成员函数。赋值=、下标[]、调用()、成员访问->必须定义为原创 2011-10-23 15:42:54 · 405 阅读 · 0 评论 -
C++ primer 第十七章 异常处理部分
1. 异常处理的意义:将问题的检测和解决分离,这样问题检测部分可以不必了解如何处理问题。2. 异常是通过抛出对象而引发的,被选中的处理代码是调用链中与该对象类型匹配而且离抛出位置最近的代码。3. 异常是可以传给非引用形参的任意类型的对象,这意味着必须能复制该类型的对象。4. 执行throw的时候,不会执行在throw后的语句,而是将控制权从thr原创 2011-11-15 13:56:15 · 447 阅读 · 0 评论 -
C++ primer 第十七章 命名空间部分
1. 命名空间污染:名字冲突。2. 命名空间定义:namespace space_name{…}定义可以是不连续的,命名空间由它分离定义部分的总和构成,是累积的。3. 可以用作用域操作符引用全局命名空间的成员。因为全局命名空间是隐含的,没有名字,可以直接用::member_name引用。4. 嵌套命名空间中的名字遵循常规规则,内存空间的名字屏原创 2011-11-15 13:57:10 · 536 阅读 · 0 评论 -
C++ perimer 第十七章 多重继承与虚继承部分
1. 多重继承是指继承多个基类,派生类会拥有所有基类的属性。2. 派生类的构造函数中,基类构造函数的调用顺序是按照基类在类派生列表中的出现次序调用。析构函数的调用顺序与构造函数相反。3. 对于多重继承,派生类的指针或引用也可以转换为任意基类的指针或引用。4. 多个基类容易导致二义性,如果继承的来自不同基类两个函数名字相同但形参表不同,会出错。类似原创 2011-11-15 13:57:56 · 762 阅读 · 0 评论 -
C++ primer 第十五章
1. 动态绑定使编译器能够在运行时决定使用在基类中定义的函数还是在派生类中定义的函数。2. 定义为virtual的函数是基类希望派生类重定义的,基类希望派生类继承的函数不能定义为虚函数。除了构造函数外,任意非static成员函数都可以是虚函数。virtual只在类内部的成员函数声明处出现,不能用在类定义体外部出现的函数定义中。如果几类定义了static成员,则整个继原创 2011-10-31 13:57:58 · 437 阅读 · 0 评论 -
C++ primer 第十八章
1. C++中,内存分配和对象构造紧密纠缠,就像对象析构和内存回收一样。使用new表达式的时候,先分配内存,然后再分配的内存中构造对象;使用delete表达式的时候,调用析构函数撤销对象,然后将内存返还系统。2. 现在C++程序一般应该使用allocator类来分配内存,更加安全和灵活。allocator类是一个模板,将内存分配和对象构造分离开。比如,可以用allocato原创 2011-11-21 10:21:29 · 467 阅读 · 0 评论 -
C++ primer 第十三章
1. 复制构造函数是一种特殊的构造函数,具有单个形参,该形参是对该类类型的引用。当定义一个新对象并用一个同类型的对象对它初始化时,将显式使用复式构造函数。当将该类型的对象传递给函数或从函数范围该类型的对象时,将隐式使用复制构造函数。 2. 【复制初始化】总是调用复制构造函原创 2011-10-07 21:53:13 · 526 阅读 · 0 评论 -
C++ primer 第十章
1. 容器元素根据键的次序排列。在迭代遍历关联容器时,我们可确保按键的顺序访问,而与元素的存放顺序无关。 2. 对于键的类型,要求必须支持 3. map的迭代器返回value_type类型的值,是一个包含const key_type和mapped_type的pa原创 2011-10-05 21:00:15 · 373 阅读 · 0 评论 -
C++ primer 第九章
1. 不能直接将一种容器内的元素复制给另一种容器,但允许通过传递一对迭代器间接实现该功能。试用迭代器时,不要求容器类型相同,容器内的元素类型也可以不相同,只要它们相互兼容,能够将要复制的元素转换为新容器的元素类型,就可以实现复制。 2. 指针就是迭代器,所以也允许通过使用原创 2011-10-04 18:15:49 · 427 阅读 · 0 评论 -
C++ primer 第二章
1.C++标准规定了每个算数类型的最小存储空间。 2.wchar_t类型用于扩展字符集,比如汉字和日语。 3.bool类型,只有0值代表false,其他非0值都是true。 4.对于unsigned类型,如果值越界,则编译器会将值对该类型的可能取值数取模,原创 2011-02-09 22:15:00 · 511 阅读 · 0 评论 -
C++ primer 第五章
1. 位操作符操纵的整数的类型可以是有符号的也可以是无符号的。如果操作数是负数,则如何处理依赖于机器。 2. 左移(>)时,对于unsigned类型,左边插入0,如果有符号,则插入符号数的副本或者0. 3. 前置操作(++i)需要做的工作少,只需加1后返回加1的结原创 2011-02-12 22:26:00 · 373 阅读 · 0 评论 -
C++ Primer 第六章
1.在switch语句里,程序会从匹配的case开始执行,直到遇到break语句或者switch语句结束。如果本case结束时无break语句,则会继续执行下一个case。 2、case标号必须是整型常量表达式。 3.异常处理(简要示范):try{// o原创 2011-02-15 22:30:00 · 449 阅读 · 0 评论 -
C++ primer 第七章
这书在年初的时候看了六章,然后就一直放着没看,惭愧……这几天再拿出来,争取看完 1. 函数不能返回另一个函数或者内置数组类型,但是可以返回指向函数的指针。 2. 指向函数的指针,这是个挺奇怪的东西,不知道主要的用途是什么。像其它指针一样,函数指针也指向某个特定原创 2011-10-03 23:04:13 · 476 阅读 · 0 评论 -
C++ primer 第八章
1. 如果函数有基类类型的引用形参,可以给函数传递其派生类型的对象。如,一个函数有istream&形参,可以传递ifstream或者istringstream对象。 2. 只有支持复制的元素类型可以存储在vector或者其他容器类型中。流对象不能复制,所以不能。原创 2011-10-04 11:53:32 · 494 阅读 · 0 评论 -
C++ primer 第三章
1.string和许多其他库类型都定义了一些配套类型,这些类型的使用可以达到与机器无关的目的。size_type就是其中的一种,它定义为与unsigned相同的含义。 2.当进行string对象和字符串字面值混合连接操作时,+ 的左右必须至少有一个是string类型,如:原创 2011-02-10 22:48:00 · 428 阅读 · 0 评论 -
C++ primer 第一章
1.大多数系统中,main函数的返回值是一个状态指示器,返回值0往往表示main函数成功执行完毕,任何其他非零的返回值都有操作系统定义的含义。通常非零返回值表示有错误出现。 对main返回值的讨论: “在你的main函数运行之前有一段编译器加上去的启动代码 由原创 2011-02-05 23:15:00 · 414 阅读 · 0 评论 -
C++ primer 第十六章
1. 模板定义以template开始,后接模板形参表(2. 模板形参可以是表示类型的类型形参,也可以是表示常量表达式的非类型形参。3. 函数模板可以用与非函数模板函数一样的方式声明为inline,inline说明符放在模板形参表之后、返回类型之前。4. 在函数模板形参表中,关键字typename和class具有相同含义,可以互换使用。5.原创 2011-11-07 10:10:16 · 431 阅读 · 0 评论