Java packages und C++ namespaces



  • Wie kann ich in C++ ein Paket ähnlich wie in Java realisieren ? Das namespace -Konzept ist ja ziemlich flexibel , aber irgenwie auch immer an inlcude Anweisungen gebunden , wenn ich nicht falsch verstanden habe. Gibt es ein Standartvorgehen diesbezüglich ,was das bilden von Paketen angeht? Hab jetzt schon mehrere Sachen gelesen :
    1. Die Header aus verschiedenen Dateien alle zum gleichen Namespace gehörig deklarieren , die Header die benötigt werden , dann einzeln in Benutzerdatei inkludieren und die using Deklaration für den Namespace noch hinschreiben oder
    2. Die Header alle in einen Namespace in einen Header includieren und diesen dann in der Benutzderdatei einmal inkludieren(eine Zeile) und die using Deklaration noch hinschreiben(eine Zeile).
    Ist es bei letzterem nicht so , dass dann auch alles einkopiert wird was nicht benötigt wird?
    In Java ist es ja glaub ich so(hab ich zumindest mal irgendwo gelesen) , dass man ein Packet einmal in einer Zeile importiert , die Namen der enthaltenen Klassen dann benutzen kann , und letzlich auch nur die benutzten Klassen mit übersetzt werden oder man diese gleich voll qualifizierend anspricht. Wie kann ich das ähnlich bequem in C++(vielleicht auch in einer Zeile) ohne 1.ständig Header inludieren zu müssen , oder 2.den Code durch einmaliges inkludieren einer Headerdatei in der sich der Namespace und intern alle mit include in den Namespace zusammengefassten Header befinden aufzublähen , obwohl ich nur vielleicht 4 davon benutze ? Vielleicht hab ich ja auch noch ne ganz falsch Sicht der Dinge , aber ist sowas irgenwie möglich ? Danke jedenfalls schon mal für eure Hilfe und eure Zeit 🙂



  • Java packages und C++ namespaces sind nicht das gleiche und man sollte auch nicht versuchen Java und C++ gleich zu programmieren.


Anmelden zum Antworten