练习8.1:考察如何管理流的状态 1 istream& func(istream& is) 2 { 3 string buf; 4 while ( is>>buf ) cout<<buf<<endl; 5 is.clear(); 6 return is; 7 } 练习8.2:考察同上 1 #incl ...
分类:
编程语言 时间:
2018-09-01 12:28:58
阅读次数:
178
异常,程序检测到当前的情况超出它的处理能力的时候将跑出异常。 比如常见的异常有除零问题,数据库连接丢失输入需要数字的情况下给出了字母输入 典型的异常处理包含以下几个部分: try块,将可能发生异常的语句置于try块中,catch 括号中的参数时一个异常类型,通过类型的不同来判断不同的异常 异常并不是 ...
分类:
其他好文 时间:
2018-08-31 10:50:38
阅读次数:
158
在if 、switch、 while 和for语句的控制结构内定义的变量只在其结构内部可见,超出结构范围将变为未定义。 以上演示了在作用域外使用变量将会变成未声明。 但是如果有同学使用vs2003版本的话,会发现并不会报错。 这是编译器的bug,虽然有时候会被程序员利用。 ...
分类:
其他好文 时间:
2018-08-29 10:50:04
阅读次数:
156
练习9.1:考察使用哪种顺序容器 (a)list,当需要在容器中任意位置执行插入/删除操作时,用list最好 (b)deque,当需要在头部插入/删除元素,不需要在容器中间任意位置插入/删除元素时,用deque最好 (c)vector,当不需要在头部/任意位置插入/删除元素的情况下,用vector最 ...
分类:
编程语言 时间:
2018-08-28 17:04:15
阅读次数:
167
11.01 描述map和vector的不同。 vector是顺序容器,只能存放单一类型的数据。 map是关联的容器,存放一对key value,这两个数据可以是不同类型。 11.02 分别给出最适合使用list、vector、deque、map以及set的例子。 1. list 需要在中间进行操作的 ...
分类:
编程语言 时间:
2018-08-28 14:13:12
阅读次数:
224
第14章 重载运算符与类型转换 14.1 基本概念 只有当操作的含义对于用户来说清晰明了时才使用运算符。 选择作为成员还是非成员? 赋值、下标、调用和成员访问运算符必须是成员。 复合赋值运算符一般是成员。 改变对象状态或者与给定类型密切相关的,如递增、解引用通常是成员。 具有对称性的运算符可能转换任 ...
分类:
编程语言 时间:
2018-08-26 16:51:09
阅读次数:
202
第12章 动态内存 12.1 智能指针 shared_ptr<T> make_shared<T>(args) 直接初始化 new int(10); 默认初始化 new int; 值初始化 new int(); 由内置指针(而不是智能指针)管理的动态内存在被显示释放前一直都会存在。 最好坚持只使用智能 ...
分类:
编程语言 时间:
2018-08-26 16:49:20
阅读次数:
190
一、C/C++语言 如果你的基础很差, 建议不要一开始就学C++语言,从C开始学起,对程序有个初步的认识,循序渐进。C语言的书可以先买一本 C primer plus,把书中的一些例子都通过键盘敲到编译工具里面去,然后单步执行,逐行调试去看各个变量的值。或者自行添加一些printf语句去输出变量的值 ...
分类:
编程语言 时间:
2018-08-25 16:31:21
阅读次数:
203