Поскольку вы написали программу NO, вы не можете получить предупреждение / ошибку, потому что cstdio должен предоставить std :: printf, чтобы его можно было использовать БЕЗ квалификатора пространства имен. Он имеет директивы using
, определенные специально, чтобы разрешить использование функций пространства имен std :: name без генерации ошибки.
В частности cstdio
содержит:
namespace std
{
using ::FILE;
using ::fpos_t;
using ::clearerr;
using ::fclose;
...
}
Обратите внимание, что это является частью стандартного ... cstdio ПРЕДЛАГАЕТСЯ действовать таким образом.