Re: Obsługa wielu języków - TStringList?
Napisane: wtorek, 29 lipca 2008, 19:30
Nie chce mi się już nad tym rozwodzić, niezależnie od tego czy użyjesz TStringList, czy STL efekt końcowy będzie taki sam. Niewątpliwie Twój przykład jest bliższy tablicom asocjacyjnym PHP niż mój. Wydaje mi się, że w programowaniu nie chodzi o przenoszenie kodu z jednego języka na drugi, lecz o tworzenie jak najlepszych i najprostszych rozwiązań.
To z wykorzystaniem STL:
można równie dobrze napisać z wykorzystaniem TStringList:
Efekt końcowy w obydwu przypadkach będzie identyczny.
To z wykorzystaniem STL:
- Kod: Zaznacz cały
map<String,String>::iterator it;
myMap["klucz1"] = "Wartość 1";
myMap["klucz2"] = "Wartość 2";
myMap["klucz3"] = "Wartość 3";
for ( it=myMap.begin() ; it != myMap.end(); it++)
{
Memo1->Lines->Add(myMap[(*it).first]);
Memo1->Lines->Add((*it).second);
}
można równie dobrze napisać z wykorzystaniem TStringList:
- Kod: Zaznacz cały
TStrings *myMap = new TStringList; // tu nie ma błędu
myMap->Add("klucz1=Wartość 1");
myMap->Add("klucz2=Wartość 2");
myMap->Add("klucz3=Wartość 3");
for ( int i = 0; i < myMap->Count; i++)
{
Memo1->Lines->Add(myMap->Names[i]);
Memo1->Lines->Add(myMap->Values[myMap->Names[i]]);
}
Efekt końcowy w obydwu przypadkach będzie identyczny.