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

Antworten auf die Frage(5)

Ihre Antwort auf die Frage