关于stl sgi map的一点体会
来源:互联网 发布:生日礼物淘宝 编辑:程序博客网 时间:2024/05/07 10:13
比较详细的研究了sgi map
map 拥有和list的某些相同的性质:当用户对它进行元素的新增或者删除操作的时候,操作之前的所有迭代器,在操作完后都依然有效,当然,被删除的那个元素的迭代器必然是个例外。
其实map的迭代器就是一个结构体,里面只有一个元素就是指向rbtreebasenode的指针,由于是这个定义,所以在使用的时候完全可以随时将迭代器强制类型转换成rbtreenode的指针,而rbtreenode中也只有一个元素Value,于是这个迭代器就成了指向Value的指针了,就可以随时对Value进行操作了,而树本身每个结点都是由指针连接的在删除和插入结点的操作的时候,对于树结构的调整只是这些left parent right指针的指向的变化,而本身的结点的内存并没有发生改变,所以迭代器不会失效。
对于被删除的那个结点,由于其内存被释放,并且left right指针未做响应更新所以。。。该迭代器再做++或——操作的时候往往返回不了正确的值。(stl为啥不把left right等指针置为null????)
- 关于stl sgi map的一点体会
- 关于stl中map使用体会
- 关于逻辑的一点体会
- 关于flush的一点体会
- 关于线程的一点体会
- 关于读书的一点体会
- 关于学习的一点体会
- 关于傅里叶变换的一点体会
- C++中P.J. Plauger STL和SGI STL中map的区别
- C++中P.J. Plauger STL和SGI STL中map的区别
- SGI STL的内存池
- SGI STL的内存池
- STL SGI内存的管理
- SGI STL的内存分配器
- SGI STL的内存池
- SGI STL的内存池
- SGI STL 的内存管理
- SGI STL 的内存管理
- IIS+tomcat 整合,并且通过域名访问
- 表格奇偶行颜色相异
- 用VB编写的向数据库添加记录的程序
- SOA和SaaS的区别
- oracle to_char用法
- 关于stl sgi map的一点体会
- Datalist间隔变低色代码
- 在线用户统计
- Linux下启动和关闭Oracle服务和监听程序
- 我所犯的错误
- access的技巧
- 关于运动控制系统软件架构设计
- Explorer.EXE应用程序错误
- 道(上)