Просто сохраните обе записи в вашем последнем как pair
или tuple
.
#include <utility>
typedef std::pair<int, std::string> IntAndString;
ListArray<IntAndString> aList;
bool success;
aList.insert(0, std::make_pair(10, "Ten"), success);
aList.insert(1, std::make_pair(8, "Eight"), success);
IntAndString out;
aList.retrieve(1, out, success);
cout << out.first << " " << out.second << "\n";
Это класс ArrayList
, который вы написали сами? Если это не домашнее задание, я бы предложил использовать структуру данных из STL
, например std::list
или std::vector
, для ваших нужд. Сама реализация ArrayList
немного неуклюжа (отправка возвращаемого результата по ссылке?)
Чтобы это работало с вашей конкретной реализацией, вам понадобится соответствующий «оператор вставки потока» operator <<
для указанного выше типа IntAndString
для использования в функции ArrayList::print
.