Как и в C++, заголовочные файлы используются без расширения.h, например <iostream>
а не <iostream.h>
но его не одинаково в случае <conio.h>
. Почему мы не можем использовать <conio>
Стандарт C++ указывает, какие заголовки являются частью стандартной библиотеки C++. В дополнение к C++ -специфическим заголовкам он включает заголовки, указанные в стандарте C. Вы можете использовать их со своими именами C (например, #include <stdio.h>
), и они помещают свои символы в глобальное пространство имен. Вы можете использовать их без расширения .h
и c
на фронте (например, #include <cstdio>
), и они помещают свои символы в пространство имен std
.
Но это только для заголовков из стандарта C. conio.h
не является частью стандарта C, поэтому стандарт C++ ничего не говорит об этом.
conio.h является заголовком C, поэтому (традиционно) заголовки C имели расширение.h для заголовков системы. C++ стандартные заголовки в основном без этого расширения.h. Как вы знаете, многие заголовки C (из стандартной библиотеки) имеют C++ аналоги (например, в C++)
conio не входит в стандарт c++, поэтому вы не можете рассчитывать на компилятор, чтобы знать, что это такое. :(
На самом деле, я думаю, что он обычно поддерживается только под окнами.
Поскольку conio.h
является заголовком C, а не C++ конкретным.