Что мне нужно сделать, это перебрать массив и построить новый, который разбивает строки с количеством > 1 на отдельные строки. Для приведенных выше данных массива результирующие данные массива должны выглядеть следующим образом:
lineID является последовательным. Я не уверен, как это сделать с помощью синтаксиса C++ и его встроенных функций. Может ли кто-нибудь привести мне пример или какое-то направление, чтобы узнать, как это сделать? Это большой проект, которому более 25 лет, поэтому я просто пытаюсь исправить то, что уже существует.
У меня есть массив, содержащий n элементов, который создается в существующем коде следующим образом: Определение CObArray: [code]class CObArray : public CObject {
// Implementation protected: CObject** m_pData; // the actual array of data INT_PTR m_nSize; // # of elements (upperBound - 1) INT_PTR m_nMaxSize; // max allocated INT_PTR m_nGrowBy; // grow amount
protected: // local typedefs for class templates typedef CObject* BASE_TYPE; typedef CObject* BASE_ARG_TYPE; }; [/code] Заполнение массива: [code]CObArray m_MyArray;
m_MyArray.Add((CObject*)new CDetObj(lineID, orderID, sku, quantity)); [/code] Пример содержимого массива: [code]1,9991,845,3 2,9991,338,1 3,9991,672,2 [/code] Что мне нужно сделать, это перебрать массив и построить новый, который разбивает строки с количеством > 1 на отдельные строки. Для приведенных выше данных массива результирующие данные массива должны выглядеть следующим образом: [code]1,9991,845,1 2,9991,845,1 3,9991,845,1 4,9991,338,1 5,9991,672,1 6,9991,672,1 [/code] lineID является последовательным. Я не уверен, как это сделать с помощью синтаксиса C++ и его встроенных функций. Может ли кто-нибудь привести мне пример или какое-то направление, чтобы узнать, как это сделать? Это большой проект, которому более 25 лет, поэтому я просто пытаюсь исправить то, что уже существует.