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
Hallo Jens, Jens M. Felderhoff wrote:
David Haller <David@dhaller.de> writes:
? Das schreibe ich doch nicht mehr! Das schrieb ich! Auf deutsch wuerdest du kaum ein "Jens ... schreibt:" sondern "Jens schrieb:" schreiben... ;)
[...] 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.
Ack. Aber darueber liessen sich sicherlich noch mehrere Mails schreiben.
Bei neueren gcc Versionen ist libg++ gar nicht mehr dabei. Stattdessen [..] aktuelle "Entwicklungsversion" ist libstdc++-v3.
Ist installiert.
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.
Typisch!!!1
Für libstdc++ tuts der Standard (bei ANSI für ca. 20 USD als PDF-Datei zum Runterladen)
Hm. die libstdc++ basiert zum Teil (ein Grossteil der Container) auf der STL von SGI ("Standard Template Library")... Meist wird durch einen Standard-Header nur der STL-Header eingebunden. Doku dazu in den Paketen nicht gefunden! Aber bei sgi bin ich dann fuendig geworden. Nur wo? ;( Ah! Wiedergefunden! Hier: http://www.sgi.com/Technology/STL/ :))
oder die 3. Auflage von Stroustrups "The C++ Programming Language".
Griffbereit in der deutschen Uebersetzung neben mir :)
Die Sprache/Syntax ist aber prinzipiell gleich.
Siehe oben bezgl. MSVC und Standard...
Genau... Eben abgesehen von den diversen systemspezifischen und lib- spezifischen Besonderheiten ;) CU David -- "We apologise for the inconvenience" ("God's Final Message") --- Douglas Adams (P.S.: I think, I feel good about it, too...) email: David@dhaller.de www: www.dhaller.de --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
David Haller schrieb am 10.08.2000 um 01:20:51 +0200: Hallo David,
Hallo Jens,
Jens M. Felderhoff wrote:
David Haller <David@dhaller.de> writes:
? Das schreibe ich doch nicht mehr! Das schrieb ich! Auf deutsch wuerdest du kaum ein "Jens ... schreibt:" sondern "Jens schrieb:" schreiben... ;)
Gnus wird immer mehr zu Outlook. Duck... und wech ist der Michael ;-) Bis denne, Michael -- "He's smiling at you, Beavis." "Shut up, Butthead!" Beavis & Butthead (about George Michael in Wham video) --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
participants (3)
-
David@dhaller.de
-
j.m.f@netcologne.de
-
micha28@gmx.de