Umfang der C-Bibliotheken in C ++ - <X.h> vs <cX>
In der C ++ - Programmiersprache: Special Edition heißt es auf Seite 431, dass ...
For every header < X.h > defining part of the C standard library in the global namespace and also in namespace std, there is a header < cX > defining the same names in the std namespace only.
Wenn ich jedoch C-Header im <cX> -Stil verwende, muss der Namespace nicht qualifiziert werden. Zum Beispiel...
#include <cmath>
void f() {
double var = sqrt( 17 );
}
Dies würde gut kompilieren. Obwohl das Buch besagt, dass die Verwendung des <cX> -Headers Namen nur im std-Namespace definiert, dürfen Sie diese Namen verwenden, ohne den Namespace zu qualifizieren. Was vermisse ich hier?
P.S. Verwendung des GNU.GCC-Compilers