Не могли бы вы помочь мне разобраться, почему я получаю эти ошибки 2019 года? Я уверен, что все файлы сохранены в правильных местах, и я думаю, что я использую правильные соглашения для файлов заголовков? Это лаборатория для моего класса системного программирования.LNK 2019/1120 Ошибки с моей обработкой заголовка/исходного файла с двойными связанными списками
Вот ошибки:
1> main.obj: ошибка LNK2019: неразрешенный внешний символ "общественности: __thiscall DLL :: intDLL :: intDLL (аннулируются)" (?? 0intDLL @ DLL @ @ QAE @ XZ) ссылка в функции _main
1> main.obj: LNK2019 ошибки: неразрешенный внешний символ "общественности: __thiscall DLL :: intDLL :: ~ intDLL (аннулируются)" (?? 1intDLL @ DLL @@ QAE @ XZ), на которые ссылается функция _main
1> main.obj: ошибка LNK2019: неразрешенный внешний символ "pub ЛИК: пустота __thiscall DLL :: intDLL :: addFront (INT) "(addFront @ intDLL @ DLL @@ QAEXH @ Z?) ссылка в функции _main
1> main.obj: LNK2019 ошибки: неразрешенный внешний символ" общественности: Int __thiscall DLL :: intDLL :: getFront (аннулируются)»(getFront @ intDLL @ DLL @@ QAEHXZ?) ссылка в функции _main
1> C: \ Users \ Josh \ документы \ Visual Studio 2012 \ Проекты \ Lab10 \ Debug \ Lab10.exe: фатальная ошибка LNK1120: 4 неразрешенные внешние
intDLL.h файл:
#include <iostream>
using std::cout;
using std::endl;
class intDLL {
public:
intDLL();
intDLL(const intDLL &original);
~intDLL();
void addFront(int inValue);
void addBack(int inValue);
void setBack();
int getFront();
int getBack();
struct node {
int value;
node *next;
node *prev;
};
private:
node *front;
node *back;
};
intDLL.cpp
#include <iostream>
#include "intDLL.h"
using std::cout;
using std::endl;
intDLL::intDLL() {
front = 0;
back = 0;
}
void intDLL::setBack() {
node *tempNode = new node;
if(front == 0) {
return;
}
tempNode = front;
while(tempNode->back != 0) {
tempNode = tempNode->prev;
}
back = tempNode;
}
void intDLL::addFront(int inValue) {
if(front == 0) {
node *newFront = new node;
newFront->value = inValue;
newFront->next = 0;
newFront->prev = 0;
}
else {
node *newFront = new node;
newFront->value = inValue;
newFront->prev = front;
front->next = newFront;
newFront->next = 0;
front = newFront;
}
setBack();
}
void intDLL::addBack(int inValue) {
setBack();
node *newBack = new node;
newBack -> value = inValue;
back->prev = newBack;
newBack->next = back;
back = newBack;
}
int intDLL::getFront() {
return front->value;
}
int intDLL::getBack() {
return back->value;
}
главный:
#include <iostream>
#include "intDLL.h"
using std::cout;
using std::endl;
int main(int argc, char* argv[]) {
intDLL test = intDLL();
test.addFront(3);
test.addFront(4);
test.addFront(5);
std::cout << test.getFront() << endl;
return 0;
}
Пожалуйста, покажите полные сообщения об ошибках. Единственный намек, который я получаю от 'LNK2019', должен быть связан с компоновщиком. –
Добавлены сообщения об ошибках. Почему downvote на моем самом первом посте? :( – josh
Потому что просто вывод сырого кода и высказывание «у меня есть сообщение об ошибке» не очень хорошо. Удалено нисходящее изображение. Но все же вы должны добавить детали, например, как вы его скомпилируете. – CharlesB