我刚刚开始学习c ++而我正在使用Microsoft Visual Studio Express 2012.我启动了一个项目,我计划拥有所有.cpp文件,但我现在遇到了一个问题,当我尝试编译和运行时一个特定的.cpp文件,它不起作用。
VS似乎只是编译并运行带有main函数的.cpp文件,它生成一个.exe并运行它。因为我的第一个.cpp文件(包含main())是一个简单的hello world程序,当我尝试编译并运行时,我只得到那个。
我有另一个带有int age()函数的.cpp文件,该函数应该询问用户年龄然后输出它。它非常简单,我只想运行它以查看它的运行情况,但我无法弄清楚如何在我的项目中编译该特定的.cpp文件,因为它似乎只想用main编译主.cpp文件( )功能。
如何在项目中编译特定的.cpp?
答案 0 :(得分:2)
所有c ++程序都从main
函数开始。为什么不尝试从age()
致电main
?
当然,为了做到这一点,你需要你的main.cpp知道有一个名为age
的函数。这是头文件的来源。
总的来说,您需要以下内容:
<强>的main.cpp 强>
#include "age.h"
int main() {
age();
return 0;
}
<强> age.h 强>
#ifndef AGE_H
#define AGE_H
int age();
#endif
<强> age.cpp 强>
#include "age.h"
int age() {
// Do age stuff.
return 42;
}
答案 1 :(得分:1)
如果你真的需要单独编译它们,请尝试将.cpp
文件分成项目。但是对于那个,你需要在每个项目中都有一个主要的。
您的另一个选择是创建dll
项目。
但既然你告诉你要保持简单,我不会建议它。
对于太简单的控制台程序,使用一些更简单的&amp;更简单的IDE。
但是什么是IDE,ccp
文件(甚至c
)程序只能从main运行。