今天我下载了新版本的Visual Studio,并尝试构建一个类:
class Fraction
{
public:
Fraction(int, int);
private:
int _a;
int _b;
};
我还为实现构建了一个 cpp 文件:
#pragma once
#include "Fraction.h"
#include <string>
Fraction::Fraction(int a, int b)
{
_a = a;
_b = b;
}
头文件(thc 类(位于名为"Franctions.h"的文件中,可在头文件目录中找到。 cpp 文件(thc 类(位于名为"Franctions.cpp"的文件中,可在资源文件目录中找到。
当我尝试运行这个简单的程序时,我遇到了这个问题: 严重性代码说明项目文件行抑制状态
Error LNK2019 unresolved external symbol "public: __thiscall Fraction::Fraction(int,int)" (??0Fraction@@QAE@HH@Z) referenced in function _main Homework2 c:UsersVVVdocumentsvisual studio 2017ProjectsHomework2Homework2questionA.obj 1
为什么会这样?
编辑: 主要:
#include "Fraction.h"
int main()
{
Fraction f1(1, 2);
return 0;
}
问题不在于您的 Fractions.h 或 Fractions.cpp,而在于 questionA.cpp请注意,在错误中找不到符号的引用文件是:
c:UsersVVVdocumentsvisual studio 2017ProjectsHomework2Homework2questionA.obj
#include "Fractions.h"
是否在该文件中?
此错误意味着编译器找不到此函数。 在包含路径中写下特定位置,看看它是否能解决您的问题。 如果是这样,则意味着您的头文件正在查看与您认为的目录不同的目录。