G
paloncino schrieb:
Du meinst also, das ist ein konstantes Literal.
Naja, es ist ein Literal, und das impliziert automatisch, dass es konstant, also read-only ist.
paloncino schrieb:
Es gibt aber doch eine Klasse String,nicht wahr?
Das stimmt, du meinst wahrscheinlich std::string.
paloncino schrieb:
Ist das eine Klasse der MFC?
Nein. MFC hat auch eine String Klasse, CString. Hat aber nix mit Standard C++ zu tun.
paloncino schrieb:
Es tauchte auch schon der Begriff STL auf. Worum geht es da?
STL steht für Standard Template Library. Das ist eine template-basierte Bibliothek, die in den C++ Standard aufgenommen und entsprechend spezifiziert wurde. Sie bietet verschiedene Container (aber auch mehr), die einem das Arbeiten erleichtern sollen. Die meisten modernen Compiler bringen eine entsprechende STL Implementation mit, es gibt aber auch frei verfügbare, zB stlport.
paloncino schrieb:
Muss ich, wenn ich die String klasse benütze(soweit ich recht habe mit meiner These s.o) irgendeine Header einbinden?
Ja, musst du. Siehe dazu entsprechende Doku.
paloncino schrieb:
Und wo ich schon mal dabei bin, zum Thema Header Dateien. Ich lese unterschiedliche Vorgehensweisen. Einmla steht da, es wird ausschließlich deklariert, also sozusagen nur der Prototyp einer Funktion z.B, dann wieder lese ich, es würde auch definiert, also wäre auch der eigentliche Code einer Funktion in der Header Datei. Trifft beides zu?
Jein. Normalerweise trennt man so, dass die Funktionsdeklarationen in den Header, und die Definition in die ÜE kommen. Es gibt aber Ausnahmen, die das nicht allgemein gültig machen.
Sehr kurze Funktionen eignen sich zB gut für Inlining, deshalb wird man sowas recht häufig direkt in der Klassendefinition implementiert sehen. Ein weiterer Punkt sind Templates. Da kaum ein Compiler das Schlüsselwort export unterstützt, wird man diese Funktionen auch in der Header definieren.