由於在C++頭文件中使用了不帶.h擴展名的文件,如<iostream>
而不是<iostream.h>
,但在<conio.h>
的情況下它不相同。爲什麼我們不能使用<conio>
預處理器指令conio.h C++
0
A
回答
0
conio.h是一個C頭,因此(傳統上)C頭有系統頭的.h擴展名。 C++標準頭文件主要沒有這個.h擴展名。如您所知,許多C頭文件(來自標準庫的C頭文件)都有C++對應文件(如C++文件中的對應文件)
0
因爲conio.h
是C頭文件,而不是C++特有的。
0
conio不是C++標準的一部分,所以你不能指望編譯器知道它是什麼。 :(
事實上,我認爲這是通常只在Windows下支持
0
的C++標準規定其標題是標準庫的C++部分除了C++ - 。特定的頭文件,它包含由指定的頭C標準,你可以用它們的C名稱(例如,#include <stdio.h>
)使用他們,他們把自己的符號到全局命名空間,你可以使用它們沒有.h
擴展,在前面(例如,#include <cstdio>
)一c
,他們把自己的符號到命名空間std
。
但這隻能是來自C標準的頭文件。 conio.h
是C標準的不部分,所以C++標準並沒有說什麼。
相關問題
- 1. C#預處理器指令
- 2. VB.NET預處理器指令
- 3. C++預處理指令
- 4. C#預處理器指令範圍
- 5. C預處理器指令和鏈接
- 6. objective-c預處理器指令
- 7. Gfortran預處理器指令
- 8. DDK預處理器指令
- 9. 預處理指令導入基於對C#中的預處理指令平臺
- 10. 預處理指令「使用」
- 11. 多行C預處理指令的宏
- 12. 擴展一個C預處理指令
- 13. Objective-C的預處理指令發出
- 14. C++預處理指令限制
- 15. C預處理指令(SQR-的Funktion)
- 16. Lex規則的C預處理指令
- 17. 無證C++預處理指令(MSVC 2013u4)
- 18. 個人預處理器指令
- 19. 預處理器指令:#elif未定義?
- 20. 是否有預處理器「AND」指令
- 21. clBuildProgram的多個預處理器指令
- 22. 腳本#預處理器指令?
- 23. nuget庫中的預處理器指令
- 24. 預處理器指令和#error
- 25. xib中的預處理器指令?
- 26. 檢測iPad的預處理器指令
- 27. XTEXT:預處理器指令的規則
- 28. Unity預處理器指令錯誤?
- 29. #if /#endif預處理指令
- 30. #elseif VS #elif指令(C/C++預處理器)