C++ STL遇到的几个问题
来源:互联网 发布:程序员必看书籍 编辑:程序博客网 时间:2024/06/05 06:39
1.vector与list的使用
vector中遍历的效果比list效果要好,但是插入数据的时候vector在开头和末尾比较简单,在中间位置插入或者删除时需要移动其他的数据,如果数据量大的话,而且频繁的插入或者删除的话,效率会很低。而list插入和删除只需要移动要插入的位置数据,因此效率会很高。
2.关于迭代器的使用
vector中迭代器不仅可以++和--,而且可以进行算数运算,比iter=iter+2。
但是list中,迭代器只能自增和自减,不能使用算术运算。
3.关于map中使用struct做为key的话产生的问题。
必须要进行<操作符重载
例如
typedef struct micro_be_x
{
int request_code;
int response_code;
int response_code_exit;
bool operator <(const micro_be_x& other) const
{
if( request_code == other.request_code )
{
if( response_code == other.response_code )
{
return response_code_exit < other.response_code_exit;
}
else
{
return response_code < other.response_code;
}
}
else
{
return request_code < other.request_code;
}
}
}micro_code_condition_t;
如果没有使用进行<重载的话,map进行查找的时候会报错
4.map中删除earse(pos)函数,无返回值,并且当前的迭代器也失效
所以正确的写法是map.earse(pos++);
- C++ STL遇到的几个问题
- 最近遇到的几个问题
- 试题遇到的几个问题
- 最近遇到的几个问题
- 最近遇到的几个问题
- Pytorch遇到的几个问题
- 从C++到C#,我遇到的几个问题
- 从C++到C#,我遇到的几个问题
- 从C++到C#,我遇到的几个问题
- 从C++到C#,我遇到的几个问题
- 从C++到C#,我遇到的几个问题
- 在C语言编程中常遇到的几个问题
- c++STL中遇到的问题
- 开发中遇到的几个问题
- VC2005/2008 遇到的几个问题
- Web中遇到的几个问题
- 最近面试遇到的几个问题
- 初学python遇到的几个问题
- 第七课 对前面内容的总结
- 直接拿来用!最火的Android开源项目
- 《GOF设计模式》—桥接(BRIDGE)—Delphi源码示例:共享Implementor对象
- 类库、子系统、框架与架构
- 软件架构思想
- C++ STL遇到的几个问题
- 软件架构概念
- HDU 1247 Hat’s Words Trie题解
- hiho第五周
- HDU 4006 The kth great number (基本算法-水题)
- 《GOF设计模式》—组合(COMPOSITE)—Delphi源码示例:组合接口
- 软件架构视图
- 也许这、梦想起航的地方
- C++ primer(第五版) 练习 6.5 个人code