【发布时间】:2014-01-06 02:39:27
【问题描述】:
我似乎无法修复我在 Visual Studio 2013 上不断遇到的这个 LNK2019 错误。
我一直在研究堆栈交换,但我认为我的代码很好。 该错误是创建 ParkingMeter 变量的结果。我不知道如何解决这个问题。任何帮助将不胜感激。
ParkingMeter.h:
#ifndef PARKINGMETER
#define PARKINGMETER
using namespace std;
class ParkingMeter{
private:
int minPurchased;
public:
ParkingMeter(int);
ParkingMeter();
int getMinutes();
};
#endif
ParkingMeter.cpp:
using namespace std;
#include "ParkingMeter.h"
ParkingMeter::ParkingMeter(int minutes)
{
minPurchased = minutes;
}
ParkingMeter::ParkingMeter(){
minPurchased = 0;
}
int ParkingMeter::getMinutes(){ return minPurchased; }
test.cpp:
#include <iostream>
#include "ParkingMeter.h"
using namespace std;
int main()
{
ParkingMeter meter(2);
}
完整的错误信息:
错误 1 错误 LNK2019:函数 _main C:\Users\Max\Documents\Visual Studio 中引用的未解析外部符号“public: __thiscall ParkingMeter::ParkingMeter(int)”(??0ParkingMeter@@QAE@H@Z) 2013\Projects\Project3\Project3\test.obj
【问题讨论】:
-
可能是一个愚蠢的问题,但是:所有这些文件都在一个项目中吗?您是在构建项目,而不仅仅是一个文件?
-
显示 FULL 错误。它包含重要信息。看起来您的项目设置不正确。
-
所有这些文件都在一个项目中。我不是在构建单个文件。我什至不知道如何使用 Visual Studio 做到这一点。我正在构建整个项目。
-
完整错误信息:错误 1 错误 LNK2019:未解析的外部符号“public: __thiscall ParkingMeter::ParkingMeter(int)”(??0ParkingMeter@@QAE@H@Z) 在函数 _main C 中引用: \Users\Max\Documents\Visual Studio 2013\Projects\Project3\Project3\test.obj
-
此处发布的代码构建良好。此代码与您的实际代码之间一定存在一些差异。
标签: c++ visual-studio linker