我似乎无法修复我在 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; }
测试.cpp:
#include <iostream>
#include "ParkingMeter.h"
using namespace std;
int main()
{
ParkingMeter meter(2);
}
完整错误信息:
Error 1 error LNK2019: unresolved external symbol "public: __thiscall ParkingMeter::ParkingMeter(int)" (??0ParkingMeter@@QAE@H@Z) referenced in function _main C:\Users\Max\Documents\Visual Studio 2013\Projects\Project3\Project3\test.obj
最佳答案
我没有发现这段代码有任何问题。
我已从您的 ParkingMeter.h
和 ParkingMeter.cpp
中删除了以下代码。 (保存在test.cpp
文件中)
using namespace std;
编辑:您似乎还没有在项目中添加 ParkingMeter.cpp
。请右键单击您的项目 -> 添加 -> 现有项目 -> 并提供 cpp 文件
。一切顺利!
关于c++ - 简单类 C++ 的 2019 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20942072/