望采纳!!!点击回答右侧采纳即可!!当你在多个文件中使用同样的函数或者变量时,如果不在每个文件中都包含相应的头文件,那么编译器就不知道这些函数或变量是什么,就会报错。而且using namespace std 只在main函数中使用是因为在main函数中使用using namespace std 意味着在main函数中所有的std命名空间中的成员都是可用的,而不是在整个程序中都可用。如果在整个程序中都使用using namespace std,那么如果你在程序中使用了与std命名空间中的成员同名的变量或函数,将导致编译错误。