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