我在 cpp 中不断收到一个错误,询问我是否忘记包含 stdafx.h,我已经在标头中完成了,错误代码是 C1010。
完整错误为:查找预编译标头时文件意外结束。您是否忘记将"#include"stdafx.h"添加到您的源中?
首先,我有一个头文件,它为计算器定义了一些基本功能。调用时接受参数。
#pragma once
#include <iostream>
#include <string>
#include "stdafx.h"
using namespace std;
class Functions
{
public:
Functions() {};
float add(float a, float b);
float subtract(float a, float b);
float multiply(float a, float b);
float divide(float a, float b);
private:
float answer;
};
然后是 cpp,它只是计算 2 个参数并返回答案。
#pragma once
#include "Functions.h"
float Functions::add(float a, float b)
{
answer = a + b;
return answer;
}
float Functions::subtract(float a, float b)
{
answer = a - b;
return answer;
}
float Functions::multiply(float a, float b)
{
answer = a * b;
return answer;
}
float Functions::divide(float a, float b)
{
answer = a / b;
return answer;
}
请用简单的术语解释一下,我不太擅长编码。
stdafx.h 是 Visual Studio 使用的预编译标头,您可以将其删除。
编辑:事实证明,这仅在您在Visual Studio中关闭预编译标头时才有效。默认情况下,它们在Visual Studio中处于打开状态。
如果你想保持它们,它们必须在任何其他包含之前。
所以你的预处理器指令应该是:
#include "stdafx.h"
#include <iostream>
#include <string>