C++ Standard Library in Opensource Projekten
-
Welche Opensource Projekten verwenden richtig viel von der C++ Standard Library? Am besten noch Projekte mit GUI und nicht nur Libraries.
-
Fast jedes C++-Projekt verwendet die Standard-Library - denn die Betriebssystemaufrufe müssen ja irgendwie standardisiert zur Verfügung gestellt werden.
GUI-Projekte haben mit der Standard-Library gar nix am Hut. Da hat jedes Betriebssystem seine eigenen Methoden. Deshalb sollte man, wenn man GUI-Programmierung beabsichtigt, auf ein UI-Toolkit ausweichen, dass die entsprechenden Funktionen zur Verfügung stellt (z.B. GTK+, Qt, wxWidgets, etc).
-
Das war nicht meine Frage.
Meine Frage ist: Welche Opensource Projekten verwenden richtig viel von der C++ Standard Library? Das GUI nix mit der C++ Standard Library zu tun hat weiß ich auch und genau deshalb will ich wissen wie Projekte die eine GUI haben diese mit string, locale usw verknüpfen.
-
Firefox ist auf jedenfall in C++ geschrieben, die anderen Mozilla Projekte dann wahrscheinlich auch. Kannst da ja mal reinschauen, ob da das ist, was du suchst
-
333444455555 schrieb:
Das war nicht meine Frage.
Meine Frage ist: Welche Opensource Projekten verwenden richtig viel von der C++ Standard Library? Das GUI nix mit der C++ Standard Library zu tun hat weiß ich auch und genau deshalb will ich wissen wie Projekte die eine GUI haben diese mit string, locale usw verknüpfen.Das kommt auf die GUI-Lib an. gtkmm (und damit auch GTK+) verwendet eine eigene String-Klasse, deren Interface aber mit std::string kompatibel ist (d.h. durch einen einfachen Typedef koennte man im eigenen Code zwischen glib::ustring nd std::string umschalten).
wxWidgets macht es genau so. Fuer Containerclassen (vector etc.) haben die sich allerdings ein eigenes Sueppchen gekocht. Bei Qt ists genau so. Da muss der Benutzer dann entscheiden, ob der lieber die Framework-Klassen oder die aus der stdlib benutzt.EDIT: und Firefox wuerd ich mir nicht anschauen. Die verwenden kaum stdlib. Wie ich letztes mal durchgschaut hab, haben die noch nichtmal Templates verwendet (Begruendung: der Firefox muss sehr portabel sein und auf zig plattformen funktionieren, deswegen wurden "advanced" C++ Features nicht verwendet).
-
Also, wenn du was von der C++ STL und der Std-Lib sowieso sehen willst, dann würd ich mir einfach mal den opensource Code von Chromium und V8 angucken. Beides von Google, wie ja bekannt sein sollte. Da werden unter anderem konsequent die Möglichkeiten der STL und der Std-Lib benutzt. Z.b. wären da die Containerklassen zu nennen.
Da sieht man auch mal das sehr gute Ergebnis, wenn man die Möglichkeiten von C++ ausnutzt.Gruß Gate
-
Schau dir halt vorallem Projekte an, die in den letzten 10 Jahren angefangen wurden. Eben in der Zeit nach der Standardisierung :).
Wenn du konkrete Sachen suchst, hilft dir vielleicht die Google Codesuche.