随笔分类 -  c/c++

摘要:14.1 重载操作符的定义不能重载的操作符:. ?: sizeof :: .*不能为任何内置类型定义额外的新的操作符;优先级和结合性是固定的;不再具备短路求值特性(不建议重载&&、||、逗号);一般将算术和关系操作符定义为非成员函数,而将赋值操作符定义为成员;使用重载操作符的方式:1) 与内置类型使... 阅读全文
posted @ 2015-10-25 01:15 treeland 阅读(141) 评论(0) 推荐(0)
摘要:复制构造函数、赋值操作符和析构函数总称为复制控制。复制构造函数:特殊的构造函数,具有单个形参,该形参时对该类类型的const引用。定义新对象并用同类型对象初始化,显式调用了复制构造函数;将该类型对象传递给函数或从函数返回该类型的对象时,隐式调用了复制构造函数。析构函数:当对象超出作用域或动态分配的对... 阅读全文
posted @ 2015-10-22 23:31 treeland 阅读(186) 评论(0) 推荐(0)
摘要:12.1 类的定义和声明概述类是将数据与操作封装的抽象数据类型。访问标号:public,可被使用该类型的所有代码访问;private,可被类成员访问;protected:,受保护成员成员函数1、在类内部,声明成员函数是必须的,定义成员函数是可选的;类外部定义的函数必须指明在类的作用域中。2、成员函数... 阅读全文
posted @ 2015-10-22 18:21 treeland 阅读(161) 评论(0) 推荐(0)
摘要:C++的输入/输出由标准库提供,支持对文件、控制窗口和string对象的读写。8.1 面向对象的程序库IO类型在三个独立的头文件中定义,iostream定义读写控制窗口的类型,fstream定义读写已命名文件的类型,sstream所定义的类型用于读写存储在内存中string对象。如果函数有基类类型的... 阅读全文
posted @ 2015-09-17 23:58 treeland 阅读(196) 评论(0) 推荐(0)
摘要:7.1 函数的定义函数调用做了两件事情:用对应的实参初始化函数的形参,并将控制权转移给被调函数。// return the greatest common divisor int gcd(int v1, int v2) { while (v2) { int temp = v2; ... 阅读全文
posted @ 2015-09-17 02:45 treeland 阅读(197) 评论(0) 推荐(0)
摘要:6.1 简单语句无关的空语句并非总是无害的。6.2 声明语句6.3 复合语句也称为块,是用一对花括号括起来的语句序列。块标识了一个作用域,一个名字只从其定义处到该块的结尾这段范围内可见。6.4 语句作用域在语句的控制结构中定义的变量,仅在定义它们的块语句结束前有效。6.5 if语句类类型能否用在条件... 阅读全文
posted @ 2015-09-14 00:39 treeland 阅读(234) 评论(0) 推荐(0)
摘要:5.1 算术操作符算术类型具有有限的长度,要注意计算后溢出的现象求模操作(%)的操作数必须为整型当两个操作数只有一个为负数时,操作结果的正负取决于机器。5.2 关系操作符和逻辑操作符关系、逻辑操作符使用算术或指针类型的操作数,并返回bool类型的值。短路求值&& 和 || 总是在仅靠左操作数无法确定... 阅读全文
posted @ 2015-09-13 03:05 treeland 阅读(213) 评论(0) 推荐(0)
摘要:现代C++程序应尽量使用vector和迭代器类型,而避免使用低级的数组和指针。设计良好的程序只有在强调速度时才在类实现的内部使用数组和指针。4.1 数组数组的维数必须用值大于等于1的常量表达式定义。非const变量以及要到运行阶段才知道其值的const变量都不能用于定义数组的维数。初始化如果没有显式... 阅读全文
posted @ 2015-09-12 08:12 treeland 阅读(235) 评论(0) 推荐(0)
摘要:3.1 using声明using namspace::name;一旦使用了using声明,就可以直接引用名字,不需要再引用该名字的命名空间3.2 string类型读入未知数目的string对象while(cin >> word){ cout 是数据类型。初始化vector v(n); ... 阅读全文
posted @ 2015-09-11 02:09 treeland 阅读(161) 评论(0) 推荐(0)
摘要:C++是一种静态类型语言,编译时执行类型检查。2.1基本内置类型内置类型:C++定义了一组表示整数、浮点数、单个字符、布尔值的算术类型,另外还定义了一种特殊类型void。其中,整数、字符和布尔值合称整型,字符类型分为char、w_char(用于扩展字符集)。算术类型的存储空间大小依机器而定,C++标... 阅读全文
posted @ 2015-09-04 00:36 treeland 阅读(197) 评论(0) 推荐(0)
摘要:1.1 编写简单的C++程序main函数是唯一被操作系统显式调用的函数Shell环境编译执行g++ -o test program.cpp 1.2 初窥输入/输出c++没有直接定义进行输入或输出的语句,这种功能是由标准库定义的。IO库提供了大量的设施,iostream库用来处理格式化输入和输出,基础... 阅读全文
posted @ 2015-09-03 22:10 treeland 阅读(163) 评论(0) 推荐(0)
摘要:一、面向过程静态变量属于静态存储方式,其存储空间为内存中的静态数据区(在静态存储区内分配存储单元),该区域中的数据在整个程序的运行期间一直占用这些存储空间,内存地址不变,直到整个程序运行结束。静态变量虽在程序的整个执行过程中始终存在,但是在它作用域之外不能使用。(相反,auto自动变量,即动态局部变... 阅读全文
posted @ 2015-08-12 15:26 treeland 阅读(182) 评论(0) 推荐(0)