#include "MyClass.h" 和 #include ".myclass.h" 有什么区别
What is the difference between #include "MyClass.h" and #include ".myclass.h"
我正在VS2010中开发,并希望将代码添加到已经存在的项目中。 顺便说一下,这是一个Win32/MFC。
我不禁注意到,在类MyClass(在本例中,MyClass是CDialog类的扩展(中,cpp文件的顶部包含以下内容:
#include "MyClass.h"
#include ".myclass.h"
我注意到第二个包含是在没有大写的情况下输入的,但我不太清楚为什么?
"MyClass.h
" 将在项目设置中定义的路径INCLUDE_DIR搜索。
"./myclass.h
" 将在与当前文件相同的目录中搜索。
Windows 文件名不区分大小写,因此,如果工作目录位于包含路径中,则这些行将指向同一文件。
这种冗余可能是 VS 确保文件至少包含一次的一种方式......
编辑:谢谢Arne Vogel,我累了,写了假东西。 您的编译器将仅查找您的头文件 il 文件名类似于#include <file.h>
但我想冗余是为了兼容所有文件系统。
.
说要查找当前目录。我猜那个标题中的包含守卫,那不会有问题。
#include "MyClass.h"
来自环境路径,而#include ".myclass.h"
来自当前路径。
大多数时候,"MyClass.h"在你的项目下的inc目录中,但你的MyClass.cpp在其他路径中。
相关文章:
- 什么是"#include <boost/functional/hash.hpp> "?
- #include < conio.h> 和 getch() 方法之间的关系是什么?
- #include "MyClass.h" 和 #include ".myclass.h" 有什么区别
- 是 std::include 中的错误还是我做错了什么
- 将标题放在项目的"include"子目录中有什么好处吗?
- 有什么方法可以在C #include语句中使用通配符
- 我什么时候使用 #include<string>?
- 一个只包含一个#include的.cpp文件有什么意义
- 来自 C 的指令 #include 和来自 C++ 的指令之间有什么区别吗?
- #include <file> #include < file.h> - 有什么区别?
- #include 和复制粘贴有什么区别?
- swig接口文件的正确sstream include路径是什么
- 如何判断哪个#include提供了什么对象
- #include<> 和 #define " " 有什么区别
- 如果#include无法找到文件会发生什么
- 在include语句中斜杠是什么意思?
- 在源文件中指定include前缀与在编译器的搜索路径参数中指定include前缀的优缺点是什么
- c++中using和include的区别是什么?
- 什么时候不使用头文件中的include保护
- 当我在.cpp文件中复制#include时会发生什么?