001
24.02.2010, 18:54 Uhr
0xdeadbeef
Gott (Operator)
|
Wenn ich das richtig im Kopf habe, bindet #include_next die erste entsprechend benannte Datei ein, die es nach dem Durchsuchen des Verzeichnisses, in dem die Datei liegt, im Headersuchpfad findet. Hier wird wohl /usr/include/c++/4.3/ vor /usr/include durchsucht, also findet der die noch.
Ganz sicher bin ich da aber auch nicht; es handelt sich um eine gcc-spezifische Erweiterung, die eigentlich nur für die Systembibliotheken gedacht ist - für dich als Programmierer bringt sie wenig, solange du nicht in diesen herumschreiben willst.
Übrigens benutzt gcc-4.4 an dieser Stelle #include, also nehme ich an, dass #include_next hier eigentlich nicht notwendig ist. Vermutlich geht es um Szenarien, in denen Details bestimmer Systemheader in gleichnamigen Headern in compilerspezifischen Verzeichnissen stehen. Schau etwa mal in /usr/lib/gcc/$ARCH/4.3/include. -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra |