Kleine Headerkunde



  • Ja alle Windows Funktionen will ich auch gar nicht haben 😃
    Nun immer noch die Frage: Wie kann ich mir die Funktionen (aus welcher lib auch immer) denn mal ansehen?



  • Ihr redet da Unsinn!

    Die iostream usw. bestehen ausschliesslcih aus Headern, weil es sich um Templates handelt. Und da bisher nur ein Compiler auf der Welt (namens Cameou) Templates in CPPs unterstützt, programmiert so gut wie niemand Templates in CPPs, sondern komplett in Headern. Denn Templates in Headern versteht jeder Compiler.

    Es ist also totaler Quatsch zu sagen, das die CPPs bei MS versteckt sind. Weil es keine CPPs für die iostream u.a. C++-Standardlibrary-Klassen gibt. So einfach ist das.



  • Pille456 schrieb:

    Also ich nutze MinGW für Windows und ist das dann nicht Open Source?

    Doch, natuerlich. Aber der Quellcode der Standarbibliothek wird glaub ich gar nicht mitgeliefert, wozu auch. ABer du kannst ihn dir ja im Netz anschauen:

    http://gcc.gnu.org/libstdc++/



  • Pille456 schrieb:

    Ja alle Windows Funktionen will ich auch gar nicht haben 😃
    Nun immer noch die Frage: Wie kann ich mir die Funktionen (aus welcher lib auch immer) denn mal ansehen?

    ?
    Wenn du den Sourcecode hast sieh in dir einfach an. Wenn du ihn nicht hast kannst du ihn auch nicht ansehen?!?
    Windows Funktionen (KERNEL32, USER, GDI, ...) kannst du dir üblicherweise nicht ansehen weil du den Sourcecode nicht hast.
    CRT Funktionen sind beim Compiler mit dabei, nur bei der Express Edition nicht AFAIK.
    Guck halt einfach nach was im VC Verzeichnis alles da ist und was nicht...



  • Artchi schrieb:

    Ihr redet da Unsinn!

    Die iostream usw. bestehen ausschliesslcih aus Headern, weil es sich um Templates handelt. Und da bisher nur ein Compiler auf der Welt (namens Cameou) Templates in CPPs unterstützt, programmiert so gut wie niemand Templates in CPPs, sondern komplett in Headern. Denn Templates in Headern versteht jeder Compiler.

    Es ist also totaler Quatsch zu sagen, das die CPPs bei MS versteckt sind. Weil es keine CPPs für die iostream u.a. C++-Standardlibrary-Klassen gibt. So einfach ist das.

    Es ist, wenn man mal drüber nachdenkt, auch totaler Quatsch zu sagen, dass kein anderer Compiler Templates in cpp-Files unterstützt. Und der Compiler heißt Comeau und hat als einziger mir bekannter Compiler export für Templates implementiert.



  • Dennis123 schrieb:

    Die kompilierten cpps liegen alle in den dlls, wobei man dann die .lib s brauch, um die dlls einzubinden

    Also ich kann meine cpp auch so kompilieren, dass alles in ner lib ist und dann brauch ich keine dll. wieso sollte man die libs brauchen um die dlls einzubinden?



  • Artchi schrieb:

    Ihr redet da Unsinn!

    Die iostream usw. bestehen ausschliesslcih aus Headern, weil es sich um Templates handelt. Und da bisher nur ein Compiler auf der Welt (namens Cameou) Templates in CPPs unterstützt, programmiert so gut wie niemand Templates in CPPs, sondern komplett in Headern. Denn Templates in Headern versteht jeder Compiler.

    Es ist also totaler Quatsch zu sagen, das die CPPs bei MS versteckt sind. Weil es keine CPPs für die iostream u.a. C++-Standardlibrary-Klassen gibt. So einfach ist das.

    die von cin und cout verwendeten buffer, die implementierung der locale Klasse,sowie die einzelnen facets stehen sicher in keiner header datei 🙂



  • Blah-blabla-blaaaaah.
    Davon abgesehen: auch Comeau hat keine vollständige Implementierung von "export", es sei denn das wäre in den letzten paar Monaten passiert.



  • @Threadersteller: Nimm linux, da is alles offen und da kannste dir den Quellcode bis in die kleinsten Winkel anschauen. Have fun!

    Bzw falls du keine lust hast eine linux distri zu installieren:

    http://www.kernel.org <=== da kannste dir den linux-kernel-source saugen und anschauen. Musst aber aufpassen dass du auch den source vom kernel bekommst und net nur einen PATCH. Schau einfach, dass das paket so um die 40 mb groß is und net nur 2-3!



  • wenn dir Assembler spaß macht kannst du dir gerne auch mal alles bis ins letzte anschauen 🙂

    dann hast du halt nicht C++ code sondern reine mnenomics 🙂

    MfG
    RadiatioN


Anmelden zum Antworten