原创 by zoe.zhang  0.写在前面的话 我是在2011年学的C++,但是那一年恰好是C++11新标准的一年,但是大学上学的C++还是基于C++98的风格的,使用的编译器也是VC6.0,啊,插一句话,虽然VC6现在看起来有些简陋,而且也不支持C++新标准,但是因为它的轻便,以及有些年代感的编码界面,我自己感觉它就像是一柄钝剑,加上是我接触的第一个编译器,因此对它还是怀有敬意的.当然,现在用的VS2013,编程友好,功能强大,也是非常棒的了.它是支持C++11标准的.C++11相对C++…
在随后的博文中我会继续分析并发包源码,在这里,得分别谈谈容器类和迭代器及其源码,虽然很突兀,但我认为这对于学习Java并发很重要; ConcurrentModificationException: JavaAPI中的解释:当不允许这样的修改时,可以通过检测到对象的并发修改的方法来抛出此异常.一个线程通常不允许修改集合,而另一个线程正在遍历它. 一般来说,在这种情况下,迭代的结果是未定义的. 某些迭代器实现(包括由JRE提供的所有通用集合实现的实现)可能会选择在检测到此行为时抛出此异常. 这样做的…
课程大纲 02实现基本原理 容器,算法,迭代器 教室:容器 人:元素 教室对于楼:容器 序列式容器: 容器元素在容器中的位置是由进入容器的时间和地点来决定 序列式容器 关联式容器: 教室中 按年龄排座,进去的人已经确定好应该坐在哪了 算法:遍历 查找 删除 统计 … 迭代器:就理解为一个指针 STL中容器和算法式是离开的,通过迭代器进行操作 03 STL基本概念理论 迭代器其实是对指针的封装,是类对象,里面有各种重载 04 string字符串常用操作 05 string课堂案例   06 vec…
练习11.1:描述map 和 vector 的不同. map是关联容器,vector是顺序容器,关联容器与值无关,vector则与值密切相关 练习11.2:分别给出最适合使用 list.vector.deque.map以及set的例子. list链表vector动态数组deque队列map映射set集合 练习11.3:编写你自己的单词计数程序. #include <iostream> #include <map> void words_count() { std::map<s…
练习9.1:对于下面的程序任务,vector.deque和list哪种容器最为适合?解释你的选择的理由.如果没有哪一种容器优于其他容器,也请解释理由.(a) 读取固定数量的单词,将它们按字典序插入到容器中.我们将在下一章中看到,关联容器更适合这个问题.(b) 读取未知数量的单词,总是将单词插入到末尾.删除操作在头部进行.(c) 从一个文件读取未知数量的整数.将这些数排序,然后将它们打印到标准输出.(a)应该使用array,因为单词的数量是固定的,也就是说元素的个数是固定的,因此符合array的特…
参考文章:http://blog.csdn.net/qq_23100787/article/details/51388163 迭代器这种东西,就是为了使访问简单!! 容器::iterator iter; for(iter= 容器.begin();iter!=容器.end();iter++){ cout<<*iter或者是 iter->first等等之类的                                    //迭代器就是这么个套路 } 然后就是set,set就是一个集合…
迭代器的获取 LIst与Set容器统一使用他们的对象.Iterator()方法获得迭代器对象,然后使用while循环配合迭代器的方法hasNext()及next()来遍历容器. List<String> myList = new ArrayList<>(); Iterator<String> it = myList.iterator(); while(it.hasNext()) { System.out.println(it.next()); } 对于Map容器,Map…
督促读书,总结精华,提炼笔记,抛砖引玉,有不合适的地方,欢迎留言指正. 标准库vector类型初探,同一种类型的对象的集合(类似数组),是一个类模版而不是数据类型,学名容器,负责管理 和 存储的元素 相关的内存,因为vetcor是类模版,对应多个不同类型,比如int,string,或者自己定义的数据类型等. 程序开头应如下声明 #include <iostream> #include <vector> #include <string> using std::strin…
顺序容器属于C++ STL的一部分,也是非常重要的一部分. 顺序容器包括: std::vector,包含在头文件<vector>中 std::string, 包含在头文件<string>中 std::deque,包含在头文件<deque>中 std::list,包含在头文件<list>中 std::forward_list,包含在头文件<forward_list>中 std::array, 包含在头文件<array>中 顺序容器几乎可…
再一次遇到 vector 这个单词; 每一次见到这个单词都感觉这个单词非常的 "高大上"; 数字遇到vector马上就可以360度旋转: 当 "电" 遇到vector,马上让交流可以变得和直流一样进行控制(德国电气工程师的矢量控制理论,目前在工控界对电机控制应用 非常广泛,是变频器控制的基础理论,可惜的是中国目前没有这方面的真正的专家, 就是IT行业中的TI公司的TMS320LF24xx系列 DSP做的事,中国的基础理论的研究真的是落后于西方发达国家很多年),而在C…