我创建此类的方式有问题吗?



我在 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>

相关内容

  • 没有找到相关文章

最新更新