ja inicjowanie map<string, vector<string> >
następująco:inicjalizacji map <string, wektor <string>>
map <string, vector<string> > dict;
dict["USA"].push_back("NYC");
dict["USA"].push_back("LA");
dict["USA"].push_back("Chicago");
dict["USA"].push_back("Dallas");
dict["India"].push_back("Delhi");
dict["India"].push_back("Bombay");
dict["Australia"].push_back("Melbourne");
dict["Australia"].push_back("Sydney");
dict["Australia"].push_back("Adelaide");
znajdę to uciążliwe. To samo można zrobić w tcl
następująco który jest czystsze:
array set dict {
USA {NYC LA Chicago Dallas}
India {Delhi Bombay}
Australia {Melbourne Sydney Adelaide}
}
Czy jest bardziej przejrzysty sposób można zainicjować w C++
? Mój kompilator jest gcc 3.4.6
W C++ 11, tak. W GCC 3.4.6, nie. – Pubby
GCC 3.4.6 ??? Naprawdę powinieneś rozważyć uaktualnienie do nowszego kompilatora ... Istnieje biblioteka doładowania, aby ułatwić ten typ inicjalizacji, ale nie jestem pewien, czy można go użyć z takim starym kompilatorem (6 lat to prawie wieczność) –