Visual c++ 我们是否可以在VC+中的单个项目中#将一个*.cpp包含到另一个*.cpp文件中+;6
我正在用VC++6.0编写一些示例程序。对于一些简单的小程序,我不想为每个程序创建单独的项目。我在一个项目中创建了两个文件,但没有.h文件,所以我将.cpp文件包含到另一个.cpp文件中。 如果我编译了它的工作,但是如果我构建了代码,它就给出了错误。代码如下:Visual c++ 我们是否可以在VC+中的单个项目中#将一个*.cpp包含到另一个*.cpp文件中+;6,visual-c++,Visual C++,我正在用VC++6.0编写一些示例程序。对于一些简单的小程序,我不想为每个程序创建单独的项目。我在一个项目中创建了两个文件,但没有.h文件,所以我将.cpp文件包含到另一个.cpp文件中。 如果我编译了它的工作,但是如果我构建了代码,它就给出了错误。代码如下: file1.cpp : ----------- #include <iostream> #include "Calculate_Int.cpp" using namespace std; int main () {
file1.cpp :
-----------
#include <iostream>
#include "Calculate_Int.cpp"
using namespace std;
int main ()
{
cout << "\n\nFirst file \n" ;
int x= cal_integer();
return 0;
}
Calculate_Int.cpp:
------------------
#include<iostream>
using std::cout;
using std::endl;
int cal_integer(){
cout<< 1+2<<endl;
cout<<1-5<<endl;
cout<<1-2<<endl;
return 0;
}
file1.cpp:
-----------
#包括
#包括“计算积分cpp”
使用名称空间std;
int main()
{
cout包含文件与在包含文件的位置复制该文件的内容是一样的。这意味着Calculate\u Int.cpp
的内容在项目中编译了两次。这就是链接器错误告诉您的:它不知道选择哪个版本
为了编译main.cpp
你只需要知道你在那里使用的函数的签名;也就是说,你只需要一个声明,而不是一个定义。因此你可以在main.cpp
中替换这一行:
#include "Calculate_Int.cpp"
为此:
int cal_integer();
而且你的项目会很好地编译和链接。无论如何,正确的方法是用这一行创建一个文件Calculate_Int.h
,并将其包含在你需要的任何地方