当前位置:首页 > 开发语言/框架 > C++

ostringstream 内存不断增加解决思路

优良自学吧提供ostringstream 内存不断增加解决思路,ostringstream 内存不断增加当持续调用函数rinexSatLine时,程序的内存不断增加,请大家指点一下! rinexSatLine(const t_obs& obs, char lli1,&n

ostringstream 内存不断增加
当持续调用函数rinexSatLine时,程序的内存不断增加,请大家指点一下!

rinexSatLine(const t_obs& obs, char lli1, char lli2, 
                              char lli5) {
  ostringstream str;
  str.setf(ios::showpoint | ios::fixed);

  if (_header._version >= 3.0) {
    str << obs.satSys 
        << setw(2) << setfill('0') << obs.satNum << setfill(' ');
  }

  const QVector<QString>& types = (_header._version > 3.0) ?
                          _header._obsTypesV3[obs.satSys] : _header._obsTypesV2;
  for (int ii = 0; ii < types.size(); ii++) {
    if (_header._version < 3.0 && ii > 0 && ii % 5 == 0) {
      str << endl;
    }
    double value = obs.measdata(types[ii], _header._version);
    str << setw(14) << setprecision(3) << value;
    if      (value != 0.0 && types[ii].indexOf("L1") == 0) {
      str << lli1 << ' ';
    }
    else if (value != 0.0 && types[ii].indexOf("L2") == 0) {
      str << lli2 << ' ';
    }
    else if (value != 0.0 && types[ii].indexOf("L5") == 0) {
      str << lli5 << ' ';
    }
    else {
      str << "  ";
    }
  }

  return str.str();
}

------解决思路----------------------
函数返回类型呢?
------解决思路----------------------
stream 的使用,没看出啥问题啊。

(本文来自互联网,不代表搜站(http://www.ylzx8.cn/)的观点和立场)
本站所有内容来自互联网,若本站收录的信息无意侵犯了贵司版权,请给我们来信(ylzx8cn@163.com),我们会及时处理和回复,谢谢