David Haller <David@dhaller.de> writes: [...]
Thorsten Peters wrote:
ich möchte gerne wisse, ob es einen Unterschied gibt zwischen C++ auf Windows Systemen zu programmieren und auf Linux Systemen.
Jup! Die gibt's:
Zuallererst sind da natuerlich die systemspezifischen Sachen wie z.B. unter Win die Registry, und Linux z.B. sysctl die es auf dem jeweils andern System nicht gibt. Die Linux-System-Spezifika sind z.B. im Linux Programmer's Guide beschrieben (Serie doc, Paket books, in dem sich auch noch mehr lesenswertes findet).
Zumindest bei Linux (und den meisten anderen Unixen) sind die System-Interfaces allerdings in C implementiert, so dass die Inhalte der Header-Dateien, wenn C++ verwendet wird, mit extern "C" { ... } Linkage-Specs geklammert sind.
Die Programmierumgebung/die Standardbibliotheken (bes. die C++ Standard Bibliothek). Unter Win hat man AFAIK wohl meist mit der MFC oder dem Pendant von Borland zu tun. Unter Linux ist AFAIK die libstdc++ bzw. libg++ _die_ Implementation.
Bei neueren gcc Versionen ist libg++ gar nicht mehr dabei. Stattdessen gibt es eine libstdc++ Implementierung. Es wird gerade daran gearbeitet, sie Standardkonform zu bekommen (vgl. ISO 14882-1998). Die aktuelle "Entwicklungsversion" ist libstdc++-v3. Unter Windows habe ich nur Erfahrungen mit MSVC++ 5.0, das zwar mit /Za eine Kommandozeilenoption zur Standardkonformität vorsieht (Default ist hier natürlich /Ze, d.h. M$-Extensions!), doch dann lässt sich fast nichts mehr übersetzen, da die Systemheader selbst nicht standardkonform sind. Auch MSVC++ 6.0 ist nicht standardkonform, wie selbst Microsoft auf deren Supportseiten einräumt. Aus gelegentlichen Besuchen in den C++ UseNet Gruppen ist mir bekannt, dass C++ Programmierern unter Windows der Borland-Compiler empfohlen wird.
Doku dazu gibt's unterschiedlich, je nach Version/Compiler z.B. mit
[...] Für libstdc++ tuts der Standard (bei ANSI für ca. 20 USD als PDF-Datei zum Runterladen) oder die 3. Auflage von Stroustrups "The C++ Programming Language".
Die Sprache/Syntax ist aber prinzipiell gleich.
Siehe oben bezgl. MSVC und Standard... Tschüss Jens --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com