Вы хотите очистить строковые потоки:
for(int x = 0; x < 200; x++)
{
outIndex.str("");
outValueA.str("");
outValueB.str("");
Кроме того, вы можете принять хороший стиль C ++ и объявить их локально в цикле:
for(int x = 0; x < 200; x++)
{
ostringstream outIndex;
ostringstream outValueA;
ostringstream outValueB;
Пока ты на нем, ты можешь переместить и остальных. Или ... переписать следующим образом:
string TwoSeries::getArrays()
{
string index;
int x;
for(x = 0; x < 200; x++)
{
ostringstream osA, osB;
osA << x << ":" << *(getArrayA() + x) + " ";
osB << x << ":" << *(getArrayB() + x) + " ";
string stA = osA.str(); // warning: value isn't used
string stB = osB.str(); // warning: value isn't used
}
ostringstream osA, osB;
outIndex << (x-1); // previous index
return outIndex.str();
}
Обратите внимание, что вы выполняете много лишней работы, и сейчас все эти значения не используются. Возможно, у вас есть больше кода, который вы не показали:)