Я пытаюсь построить решение с 2 проектами и получить следующие сообщения об ошибках:
ColliderTest.obj: ошибка LNK2028: неопределенный токен (0A000080) "public: __thiscall Rect :: Rect (int)"(?? 0Rect @@ $$ FQAE @ XZ), на который есть ссылка в функции "void __cdecl myFunction (void)" (? MyFunction @@ $$ FYAXXZ)
ColliderTest.obj: ошибка LNK2019: неразрешенный внешний символ "public: __thiscall Rect :: Rect (int) "(?? 0Rect @@ $$ FQAE @ XZ), на который ссылается функция" void __cdecl myFunction (void) "(? myFunction @@ $$ FYAXXZ)
Код:
- В проекте "Коллайдер" у меня есть следующие файлы:
Collider.h
#pragma once
class Rect{
int x;
int y;
unsigned int w;
unsigned int h;
public:
Rect(int x);
};
Collider.cpp
#include "Collider.h"
Rect::Rect(int x){
this->x = x;
}
- Проект "ColliderTest" имеет ссылку на проект Collider, и этот файл:
ColliderTest.cpp
#include "../app/Collider.h"
void myFunction();
void myFunction(){
Rect rect(4);
}
Также каждый проект имеетфайл main.cpp с пустой функцией main (), чтобы избежать жалоб компилятора на точку входа.