Verständnisfrage : Biblotheken
-
Im C++ Forum lese ich oft die Frage wie ich z.B. Netzwerksachen programmieren kann !
Dann wird geantwortet das es in reinem C++ nicht geht du aber die Bibliothek "xxx" benutzen kannst . Jetzt will ich wissen was eigentlich eine Bibliothek ist und in welcher Sprache diese geschrieben ist . Ich denke nicht in C++ oder sonst ist es ja unlogisch zu sagen das es in reinem C++ nicht geht.- Sind Bibliotheken normale HeaderDateien ?
- In welcher Sprache sind die Bibliotheken geschrieben ?
-
Die Bibliothken nutzen die APIs des Betriebssystems, zum Beispiel bei Windows die WInAPI
-
und wo liegt der Unterschied zu Headerdateien ?
-
Header-Dateien enthalten nur Deklarationen, aber keine Implementierungen.
-
In Bibliothkenen leigen extrene Funktionen. Diese hast du nicht in deinem eigenen Quellcode, sondern extern.
-
Oder anders ausgedrückt:
In HEADERDATEIEN liegen (nur) die Namen der Funktionen (welche sich wiederum in den Bibliotheken befinden). Mit "das geht nicht in reinem C++" ist eigentlich nur gemeint das die Funktionen für die Netzwerkfunktionalität nicht in den "standard" Bibliotheken (also den Bibliotheken die mit dem Compiler kommen) vorhanden sind.
Nichtsdestotrotz sind die Netzwerkbibliotheken absolut in reinem C/C++ geschrieben. (was aber nicht immer der Fall sein muss)Ausserdem :
Headerdateien sind reine ASCII-Textdateien.
Bibliotheken enthalten kompilierten (ausführbaren) Code.