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中释放指针将会奔溃。具体原因不知

相关文章:

  • 2021-12-02
  • 2021-06-11
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-07
  • 2021-06-24
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-02-14
  • 2021-09-17
  • 2021-09-11
  • 2021-06-25
  • 2021-08-25
相关资源
相似解决方案