- Chỉ thị của #include không phân biệt đối xử các loại tập tin (nó chỉ là một tôn vinh copy-paste hoạt động) - không tự động thêm của .h đang xảy ra.
- C++ file header chuẩn được cung cấp mà không có sự mở rộng .h
- Đôi khi ngược tập tin tiêu đề tương thích được cung cấp bởi các nhà cung cấp có cùng tên với phần mở rộng .h thêm
Tất cả đã làm với không gian tên . Các đối tác .h cho C++ header chuẩn thường # bao gồm C++ đúng tiêu chuẩn tiêu đề (không có phần mở rộng .h) và sau đó đưa ra một loạt các sử dụng (một cái gì đó như thế này):
FILE: iostream.h
#include <iostream>
using std::iostream;
using std::ostream;
using std::ios;
...
trong khi headerfile không có phần mở rộng .h không gây ô nhiễm không gian tên với tất cả các lớp và kiểu đã xác định.
Nguồn
2009-05-23 09:51:54
Trùng lặp: http://stackoverflow.com/questions/441568/when-can-you-omit-the-file-extension-in-an-include-directive – GManNickG
Cảm ơn @GMan. Tìm kiếm của tôi trong SO và Google không tiết lộ điều này. Đó là bởi vì câu hỏi được liên kết có chút khác biệt. Dù sao tôi cảm thấy câu trả lời của Michael Burr giải quyết câu hỏi của tôi. –