Я хотел бы понять, является ли MultiMap лучшим контейнером в STL для хранения данных финансового рынка в формате «дата», «цена» (например, 07/10/2013 1000). Я попытался сделать простой пример, просто чтобы понять, какой может быть реализация, но у меня были ужасные ошибки, когда я пытался распечатать их.Использование MultiMap для хранения данных финансового рынка в C++
class Date {
int day;
int month;
int year;
int value_of_date;
public:
Date(int d, int m, int y):
day(d),month(m),year(y){
value_of_date=year*10000 + month*100 + day;
}
friend ostream & operator<< (ostream &out, const Date &date);
};
ostream & operator<< (ostream &out, const Date &date) {
out << "(" << date.day << ", " <<
date.month << ", " <<
date.year << ")";
return out;
}
int main() {
std::multimap<Date,int> first;
first.insert(std::pair<Date,int>(Date(01,01,2000),1000));
first.insert(std::pair<Date,int>(Date(01,02,2000),1010));
first.insert(std::pair<Date,int>(Date(01,03,2000),1020));
first.insert(std::pair<Date,int>(Date(01,04,2000),1030));
for(auto i = first.cbegin(); i != first.cend(); i++) {
std::cout << i->first << " " << i->second << std::endl;
}
return 0;
}
Сравнение < Оператор() моя проблема здесь? Как я могу реализовать оператор <() для сортировки даты.
Есть ли более элегантное решение для даты типа вместо использования даты класса?
Если это лучший КОНТЕЙНЕР для данных финансового рынка?
Большое спасибо за любую помощь
Спасибо Ли за ваше предложение, я буду смотреть в библиотеке Boost и рассматривать STXXL. Мне нужно это в C++. – MaxMarcucci