2015年8月25日

摘要: C++语言定义了两个运算符来分配和释放动态内存:运算符new分配内存,运算符delete释放new分配的内存。运算符new和delete使用new动态分配和初始化对象在自由空间分配的内存是无名的,因此new无法为其分配的对象命名,而是返回一个指向该对象的指针:int* p = new int;默认情... 阅读全文
posted @ 2015-08-25 21:09 街角的咖啡店 阅读(269) 评论(0) 推荐(0) 编辑

2015年8月21日

摘要: StrBlob是一个管理string的类,借助标准库容器vector,以及动态内存管理类shared_ptr,我们将vector保存在动态内存里,这样就能在多个对象之间共享内存。定义StrBlob类:#include #include #include #include #include #incl... 阅读全文
posted @ 2015-08-21 09:55 街角的咖啡店 阅读(303) 评论(0) 推荐(0) 编辑
 
摘要: 在C++中,动态内存是的管理是通过一对运算符来完成的:new ,在动态内存中为对象分配空间并返回一个指向该对象的指针,delete接受一个动态对象的指针,销毁该对象,并释放该对象关联的内存。动态内存的使用很容器出现错误,确保在正确的时间释放动态内存是极其困难的。有时候我们会忘记释放动态内存,这样就会... 阅读全文
posted @ 2015-08-21 08:54 街角的咖啡店 阅读(379) 评论(0) 推荐(0) 编辑

2015年8月20日

摘要: 单词转换就是:将一些缩写的单词转换为实际的文本。第一个文件保存的是转换的规则,而第二个文件保存的是要转换的文本。假设单词转换的规则的文件如下:brb be right backk okay?y whyr areu youpic picturethk thanks!l8r later我们希望转换的文本... 阅读全文
posted @ 2015-08-20 15:02 街角的咖啡店 阅读(191) 评论(0) 推荐(0) 编辑
 
摘要: 关联容器的操作除了和顺序容器定义的类型之外,关联容器还定义了一下几种类型:关联容器额外的类型别名key_type 此容器类型的关键字类型mapped_type每个关键字关联的类型,只 适用于mapvalue_type对于set,与key_type相同对于map,为pair关联容器的迭代器当解引用一个... 阅读全文
posted @ 2015-08-20 10:38 街角的咖啡店 阅读(482) 评论(0) 推荐(0) 编辑

2015年8月19日

摘要: 标准库定义了两种主要的关联容器:map和setmap中的元素时一些关键字-值(key-value)对,关键字起到索引的作用,值则表示与索引相关的数据。set中每个元素只包含一个关键字,可以完成高效的关键字查询操作。由map和set延伸出来一共8个关联容器,或者是一个map,或者是一个set,mult... 阅读全文
posted @ 2015-08-19 23:26 街角的咖啡店 阅读(335) 评论(0) 推荐(0) 编辑
 
摘要: 除了为每个容器定义的迭代器之外,标准库在头文件还定义了额外集中迭代器, 包括:插入迭代器,这些迭代器被绑定到一个容器上,可以向容器插入元素。 流迭代器, 这些迭代器被绑定到输入或输出流上,可以遍历所关联的IO流反向迭代器,这些迭代器向后而不是向前... 阅读全文
posted @ 2015-08-19 00:28 街角的咖啡店 阅读(177) 评论(0) 推荐(0) 编辑

2015年8月18日

摘要: 一、lambda表达式lambda表达式原型: [capture list] (parameter list) -> retrue type { function body }一个lambda表达式表示一个可调用的代码单元,可以理解为一个未命名的内联函数。一个lambad表达式包含 : 一个捕获列表... 阅读全文
posted @ 2015-08-18 22:19 街角的咖啡店 阅读(275) 评论(0) 推荐(0) 编辑
 
摘要: 大多数算法都定义在头文件里,而标准库还在头文件里定义了一组数值泛型算法,比如accumulate。● find算法,算法接受一对迭代器表示要搜寻的范围,还接受一个给定的值,算法从给定的范围内查找,返回指向第一个等于给定值的元素的迭代器,若没有找到,则返回第二个参数。int val = 5;vecto... 阅读全文
posted @ 2015-08-18 18:03 街角的咖啡店 阅读(182) 评论(0) 推荐(0) 编辑

2015年8月15日

摘要: vector变长机制、string的其他构造方法,添加、替换和搜索操作,string比较和数值转换,最后是容器适配器。vector对象是如何增长的vector和string类型提供了一些成员函数,允许我们与它实现中内存分配的部分互动:capacity()操作告诉我们容器在不扩张内存空间的情况下可以容... 阅读全文
posted @ 2015-08-15 18:19 街角的咖啡店 阅读(261) 评论(0) 推荐(0) 编辑