vector中数据释放崩溃问题
struct LINE
{
char securityID[32]; /*!< 证券代码 */
int64_t dateTime; /*!< 日期时间(日期变化)YYYYMMDDhhmmss */
double openPx; /*!< 开盘价 */
double highPx; /*!< 最高价 */
double lowPx; /*!< 最低价 */
double lastPx; /*!< 最新价 */
double avgPx; /*!< 均价 */
int64_t volume; /*!< 成交量 */
double amount; /*!< 成交金额 */
int32_t tradeDay; /*!< 交易日期 */
short lineNo; /*!< 走势序列号 */
virtual ~LINE() {} //就是这行引起崩溃
};
LINE* pLine = new LINE;
delete pLine;
// 这样释放不会崩溃
vector<LINE*> vLineTmp;
for (int j = 0; j < 300; ++j)
{ LINE* pLine = new LINE;
memset(pLine, 0, sizeof(LINE));
sprintf_s(pLine->securityID, "%d-%d", 0, j);
vLineTmp.push_back(pLine);
} for (unsigned int i = 0; i < vLineTmp.size(); ++i)
{
delete vLineTmp[i]; // 崩溃
}
vLineTmp.clear();
如果 line结构体带上析构函数,在vector中释放指针将会奔溃。具体原因不知
vector中数据释放崩溃问题的更多相关文章
- vector中数据进行去重和排序
, , , , , , ,}; std::vector<int> vec(a, a+sizeof(a)/sizeof(int) ); std::sort(vec.begin(), vec. ...
- 实战c++中的vector系列--正确释放vector的内存(clear(), swap(), shrink_to_fit())
关于vector已经写的差不多了,似乎要接近尾声了,从初始化到如何添加元素再到copy元素都有所涉及,是时候谈一谈内存的释放了. 是的,对于数据量很小的vector,完全没必要自己进行主动的释放,因为 ...
- [C++]STL容器Vector的内存释放
直接抛出两句话,说明到底应该如何释放Vector占用的内存. “vector的clear不影响capacity,你应该swap一个空的vector.” <Effective STL>中的“ ...
- c++ vector的内存释放
c++中vector的一个特点是: 内存空间只会增长,不会减小.即为了支持快速的随机访问,vector容器的元素以连续方式存放,每一个元素都挨着前一个元素存储.设想,如果每次vector添加一个新元素 ...
- 关于vector的内存释放问题
以前一直想当然的以为vector 的clear()函数会保证释放vector的内存,今天网上一查资料发现完全不是我想象的那样子. 比如有如下代码: tempObject obj1; tempObjec ...
- vector中的元素删除
删除vector中的元素,最容易的方法就是使用vector的erase()函数. vector vec;for ( vector::iterator iter = vec.begin(); iter! ...
- 把vector中的string对象导入到字符指针数组中
#include <iostream>#include <string>#include <vector>//#include <cctype>#inc ...
- vector的内存释放
转自:http://www.cnblogs.com/summerRQ/articles/2407974.html vector : C++ STL中的顺序容器,封装数组 1. vector容器的内存自 ...
- vector中的find
vector中的find - huangyimin的专栏 - 博客频道 - CSDN.NET vector中的find 2011-01-13 09:57 11334人阅读 评论(0) 收藏 举报 ve ...
随机推荐
- ShellExecute指定IE浏览器打开
ShellExecute(NULL,L"open", L"iexplore.exe", L"www.baidu.com", NULL, SW ...
- 阿里云轻应用云服务器配置tomcat
#etc/profile export CATALINA_HOME=/wocloud/tomcat_cluster/tomcat1/apache-tomcat-7.0.57 #查看防火墙状态 fire ...
- 四、MyBatis-映射文件
映射文件指导着MyBatis如何进行数据库增删改查,有着非常重要的意义. <?xml version="1.0" encoding="UTF-8" ?&g ...
- jmeter中遇见的坑:url需要编码的
在postman中能请求成功,但是在jmeter就是请求失败报500错. 请求的 url :/graph/vertices?label=node&properties={"num& ...
- -bash: findstr: command not found 问题解决
今天有个任务,需要获取apk的版本信息,百度之后说是之下下面的命令就行 adb shell dumpsys package com.baidu.searchbox | findstr versionC ...
- LeetCode--041--缺失的第一个整数(java)
给定一个未排序的整数数组,找出其中没有出现的最小的正整数. 示例 1: 输入: [1,2,0] 输出: 3 示例 2: 输入: [3,4,-1,1] 输出: 2 示例 3: 输入: [7,8,9,11 ...
- Check the port occupy on Mac OSX
Check the port occupy on Mac OSX lsof -i :7070 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME si ...
- kafka消费组、消费者
consumer group consumer instance 一个消费组可能有一个或者多个消费者.同一个消费组可以订阅一个或者多个主题.主题的某一个分区只能被消费组的某一个消费者消费.那么分区和消 ...
- 29 基于PCL的点云平面分割拟合算法技术路线(针对有噪声的点云数据)
0 引言 最近项目中用到了基于PCL开发的基于平面的点云和CAD模型的配准算法,点云平面提取采用的算法如下. 1 基于PCL的点云平面分割拟合算法 2 参数及其意义介绍 (1)点云下采样 1. 参数: ...
- 【转】Django 模板语法
转自:https://www.cnblogs.com/love9527/p/9077863.html Django 模板语法 一.模板 只要是在html里面有模板语法就不是html文件了,这样的文件就 ...