参见英文答案 >
What should go into an .h file? 12个
我正在尝试创建一个简单的程序,使用良好的编程实践从C中获取用户的输入.它由Input.hpp,Input.cpp和main.cpp组成.即使我使用ifndef来防止这种情况,我仍然会收到多重定义错误.
Input.hpp
#ifndef Input_HPP
#define Input_HPP
#include
#include
using namespace std;
vector Get_Input();
vector input_array;
string starting_position;
int input_number;
#endif
Input.cpp
#include
#include
#include
#include
#include "Input.hpp"
using namespace std;
vector Get_Input()
{
cin>>starting_position;
cin>>input_number;
for (int i = 0; i < input_number; i++)
{
cin>>input_array[i];
}
cout<
return input_array;
}
main.cpp中
#include "Input.hpp"
#include
using namespace std;
int main()
{
Get_Input();
return 0;
}
当我从头文件中删除变量声明并将它们放在cpp文件中但保留头文件中的函数声明时,程序构建没有错误.我的理解是变量和函数可以在头文件中声明.有人可以向我解释我错过了什么吗?
谢谢.