我想了解,如果MultiMap是STL中用於存儲金融市場數據的最佳容器,例如「date」,「price」(例如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;
}
是比較< operator()我的問題在這裏?我如何實現< operator()來排序日期。
是否有類型日期而不是使用類日期更優雅的解決方案?
如果這是金融市場數據的最佳容器?
非常感謝您的幫助
謝謝李先生的建議,我會在Boost Library中尋找並考慮STXXL。我需要它在C++中。 – MaxMarcucci