>
> "Rasmus" <fsim@ofir.dk> wrote in message
> news:1135525436.589643.299430@g49g2000cwa.googlegroups.com...
> Hej
>
> Tak for svarene. Jeg har lige et par enkelte spørgsmål i forhold til
> msvc.
> Hvordan gøres følgende i msvc (fra borland c++ builder)?
> Findes der en type som AnsiString?
Der findes en type "std::string" som er en del af C++ Standard Library, og
derfor er tilgængelig på en hvilken som helst rimelig komplet C++
implementering - uanset om det er Microsoft, Borland eller noget helt tredie
på en helt anden platform.
Netop af den grund er den at foretrække frem for alle mulige platform
specifikke streng klasser som AnsiString, CString, String etc.
Naturligvis kan man have behov for konvertering når man interfacer til et
givent bibliotek, som f.eks. VCL.
> Med f.eks. SubString(),
"std::string::substr"
> Pos() osv?
"std::string::find"
>
> Og,
> TStrings* StrList = new TStringList;
Som default "std::vector<std::string>", men hvis man har særlige krav kan
"std::list<std::string>" eller "std::deque<std::string>" komme på tale.
> Med f.eks. StrList ->operator [](),
Ja, er det ikke bare grim syntaks pga. slægtskabet med Delphi ?
vector<string> strings;
// .....
strings[i]
> Str->Delete()
"vector<string>::erase"
>, StrList->IndexOf(),
std::find(strings.begin(), string.end(), str);
> StrList->LoadFromFile
Nej - det er læse tekst fra en fil er generelt langt mere kompliceret end
hvad der kan klares med een funktion. Hvad skiller f.eks. 2 string elemter i
filen ?
Det tilsvarende bliver noget i retningen af
ifstream file("text.txt");
vector<string> lines;
string line;
while(getline(file, line))
lines.push_back(line);
> og SaveToFile
vector<string> strings;
//...
ofstream file("text.txt");
copy(strings.begin(), strings.end(), ostream_iterator<string>(file, "\n"));
>
> Og tilsidst, TRegistry
???
>og TDateTime
Kig på Boost.Date_Time (
http://www.boost.org/doc/html/date_time.html)
Generelt:
Kig godt på C++ Standard Library og Boost.
Venlig hilsen
Mogens Hansen