尝试制作一个简单的计算器,但我甚至无法使用我的第一个功能。我一直试图尽可能地使用我的标题和.cpps,因为我记得那些重要的日子。哈哈。我的印象是头文件包含在main.cpp中,它有头部保护。这些只是我的函数声明正确吗?然后在Calculation'sFunctions.cpp中编写我在头文件上创建的上一个声明函数的代码。我也不确定何时包含iostream和stdafx.h以及所有等等。无论如何,事先感谢你的帮助人员,这里是我的3个文件,我在这一点上尝试的是从用户那里得到一个整数。
Calculator.cpp
#include "stdafx.h"
#include <iostream>
#include "CalculatorDeclarations.h"
int main()
{
int getFirstInteger(int userInput)
return 0;
}
CalculatorDeclarations.h
#ifndef ADD_H
#define ADD_H
#include "stdafx.h"
#include <iostream>
int getFirstInteger();
#endif
CalculationsFunctions.cpp
#include "stdafx.h"
#include <iostream>
int getFirstInteger(int userInput)
{
std::cout << "Please enter the first integer you would like to use." << std::endl;
std::cin >> userInput;
return userInput;
}
错误:
Error LNK2019 unresolved external symbol _main referenced in function "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) ConsoleApplication1 c:\Users\Shane\documents\visual studio 2015\Projects\ConsoleApplication1\ConsoleApplication1\MSVCRTD.lib(exe_main.obj) 1
Error LNK1120 1 unresolved externals ConsoleApplication1 c:\users\shane\documents\visual studio 2015\Projects\ConsoleApplication1\Debug\ConsoleApplication1.exe 1
答案 0 :(得分:0)
那么你的第一个问题是你的主要问题&#39;方法
int main()
{
int getFirstInteger(int userInput)
return 0;
}
语法不正确(应以分号结尾)。你应该传递一个int。所以可以修改为
int main()
{
int j = 1;
getFirstInteger(j)
return 0;
}
但是值得一看这里的实施。您在该方法中获取用户输入,因此无需传入任何内容。并且您没有使用输出,因此无需返回任何内容。
此外,您还要加倍#include<iostream>
这在一个小型计划中不会成为一个大问题,但这是一种浪费和不良做法。只在需要的地方包含它(在CalculationsFunctions.cpp中)。不要认为你需要#include "stdafx.h"
。