在程序开头
#include 
和在菜单中选择Project->Add to project->Files把文件加入工程,在File View中看到文件所处位置不一样,在编译工程时似乎也不一样。有时必须把文件加入工程才能编译通过,这两种方法有什么区别呢?

解决方案 »

  1.   

    头文件用include, c/cpp文件加入工程
    因为如果include c/cpp文件的话, 如果该c/cpp文件中又include其他头文件或c/cpp文件,就会造成重复包含,而且文件改变后编译器也不知道,每次都要Rebuild All
      

  2.   

    #include 缺省要求包含的文件是在当前工程目录下,或者在当前工程中,或者在“工具”--》“选择”--》“目录”下指定的Include目录中才可以。就是说,如果你写:#include "My.h",要求My.h文件必须在上述指定的目录中。但如果你将文件加入工程中,就没有这个要求了。
      

  3.   

    不同。
    比如说,如果是一个类,它已有相关的H和CPP但不Add to project的话,VC中不能快捷地找到该类。你可以不Add to project,但必须#INCLUDE,这不是什么VC问题了,是C++语法,所以这两者是不同的。
      

  4.   

    cpp文件必须加入工程,头文件可以直接包含。否则编译通不过