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() 関数を含む main.cpp ファイルがあり、エントリ ポイントに関するコンパイラの苦情を回避します。