随笔分类 - STL
摘要:场景: 按DDX值倒序取前十的板块代码,用 map<float, string, greater<float> > mapBKDDX; 存储时,相同DDX值的板块只能存储第一个,有数据缺失。 解决方法: 使用 multimap, 拥有等价关键的 关键-值 pair 的顺序就是插入顺序,且不会更改。(
阅读全文
摘要:#include #include #include #include using namespace std; void testMap(const vector &vTmp = vector(), const map &mapParam = map()) { cout << "test end" << endl; } int main() { testMap();...
阅读全文
摘要:参见:https://www.cnblogs.com/DswCnblog/p/5629165.html
阅读全文
摘要:一、vector 测试过程: 结论: 1. vector clear 之后,内存没有释放,但在下次分配时会复用该块内存。 2. vector swap 空数据之后,会释放内存。 二、map 测试过程: 结论: 1. map clear 之后,会释放内存。 2. map swap 空数据之后,会释放内
阅读全文
摘要:struct SIndexData { string sCode; int iDate; int iTime; double f1; SIndexData(): iDate(0), iTime(0) { } bool operator == (const SIndexData & obj) const //重载 == 操作符 { return sCode == obj...
阅读全文
摘要:1.vector vector<string> vec_one; vector<string> vec_two; vec_one.push_back("xiaochun"); vec_two.push_back("chunxiao"); vec_two.insert(vec_two.end(),ve
阅读全文
摘要:一、vector 1.判断某元素是否存在 vector vStr; int nRet = std::count(vStr.begin(), vStr.end(), "xiaochun");//判断vector中是否有 "xiaochun" 这个元素 2.查找某个元素 方法一: ...
阅读全文
摘要:场景:定义了一个结构体,包含一个vector的成员变量,在给这个vTQ push_back数据的时候报错。 原因: tag_TQInfo构造函数用了memset,将分给tag_TQInfo的那块内存都初始化了,也就把vector vTQ自带的东西都清零了,破坏了vector的结构,会导致之后vTQ使
阅读全文
摘要:场景: 原因: 用到string类型,但是没有包含头文件。 解决方法: #include<string>
阅读全文
摘要:一、 Map< Key , Value > m_Eg; 一般赋值表示成: TypeElem value; m_Eg[key] = value; 或 m_Eg.insert(make_pair(key, value)); 注: insert 时,若 map中已经存在该 key,则不做任何操作。 二、
阅读全文
摘要:参见:http://blog.csdn.net/liuzhi67/article/details/50950843
阅读全文
摘要:一、按 key 排序 1.map顺序排序(小的在前,大的在后): map<float,string,less<float> > m_aSort;//已float从小到大排序 2.map逆序排序(大的在前,小的在后): map<float,string,greater<float> > m_aSort
阅读全文
摘要:#include #include 一、vector保存的是基础数据类型(int、char、float等) vector vInt; vInt.push_back(1); vInt.push_back(3); vInt.push_back(2); vInt.push_back(100); vInt.push_back(15); sort(vInt.begin(), vIn...
阅读全文