1
C, C++ / [C++] Błąd LNK2019 podczas przerabiania kodu
« dnia: 2018-03-18, 14:52 »
Cześć,
Od kilku dni przerabiam kodu żeby wyodrębnić z niego klasy, i męczę się ostatnio z błędem LNK 2019....
Wcześniej go nie spotkałem :( ktoś wie jak go naprawić? Używam visual studio 2017
Kod klasy:
wszystkie funkcje mam zdefiniowane w innym pliku
Od kilku dni przerabiam kodu żeby wyodrębnić z niego klasy, i męczę się ostatnio z błędem LNK 2019....
Wcześniej go nie spotkałem :( ktoś wie jak go naprawić? Używam visual studio 2017
Kod: [Zaznacz]
1>FApplication.obj : error LNK2019: unresolved external symbol "public: void __cdecl FCamera::Initialize(int,int,struct DirectX::__vector4,struct DirectX::__vector4,struct DirectX::__vector4)" (?Initialize@FCamera@@QEAAXHHU__vector4@DirectX@@00@Z) referenced in function "private: bool __cdecl FApplication::InitScene(void)" (?InitScene@FApplication@@AEAA_NXZ)
1>FApplication.obj : error LNK2019: unresolved external symbol "public: void __cdecl FCamera::UpdateCamera(struct DirectX::__vector4)" (?UpdateCamera@FCamera@@QEAAXU__vector4@DirectX@@@Z) referenced in function "private: void __cdecl FApplication::DetectInput(double)" (?DetectInput@FApplication@@AEAAXN@Z)
1>FApplication.obj : error LNK2019: unresolved external symbol "public: void __cdecl FCamera::SetParameters(float,float,struct DirectX::__vector4,struct DirectX::__vector4)" (?SetParameters@FCamera@@QEAAXMMU__vector4@DirectX@@0@Z) referenced in function "private: void __cdecl FApplication::DetectInput(double)" (?DetectInput@FApplication@@AEAAXN@Z)
1>FApplication.obj : error LNK2019: unresolved external symbol "public: struct DirectX::__vector4 __cdecl FCamera::GetPosition(void)" (?GetPosition@FCamera@@QEAA?AU__vector4@DirectX@@XZ) referenced in function "private: void __cdecl FApplication::UpdateScene(double)" (?UpdateScene@FApplication@@AEAAXN@Z)
1>FApplication.obj : error LNK2019: unresolved external symbol "public: struct DirectX::__vector4 __cdecl FCamera::GetRight(void)" (?GetRight@FCamera@@QEAA?AU__vector4@DirectX@@XZ) referenced in function "private: void __cdecl FApplication::DetectInput(double)" (?DetectInput@FApplication@@AEAAXN@Z)
1>FApplication.obj : error LNK2019: unresolved external symbol "public: struct DirectX::__vector4 __cdecl FCamera::GetForward(void)" (?GetForward@FCamera@@QEAA?AU__vector4@DirectX@@XZ) referenced in function "private: void __cdecl FApplication::DetectInput(double)" (?DetectInput@FApplication@@AEAAXN@Z)
1>C:\Users\batzi\source\repos\FEngine\x64\Debug\FEngine.exe : fatal error LNK1120: 6 unresolved externals
Kod klasy:
Kod: [Zaznacz]
#pragma once
#include <DirectXMath.h>
using namespace DirectX;
class FCamera
{
public:
FCamera();
~FCamera();
void Initialize(int, int, XMVECTOR, XMVECTOR, XMVECTOR);
void UpdateCamera(XMVECTOR);
void SetParameters(float, float, XMVECTOR, XMVECTOR);
XMVECTOR GetPosition();
XMVECTOR GetRight();
XMVECTOR GetForward();
const XMMATRIX GetView();
const XMMATRIX GetProjection();
float GetYaw();
float GetPitch();
private:
const float mCharCamDist = 15.0f; //Distance between character and camera.
float mYaw;
float mPitch;
//Matrices.
XMMATRIX mView;
XMMATRIX mProjection;
XMMATRIX mRotationMatrix;
//Vectors.
XMVECTOR mPosition;
XMVECTOR mTarget;
XMVECTOR mUp;
XMVECTOR mForward;
XMVECTOR mRight;
XMVECTOR mDefaultForward;
XMVECTOR mDefaultRight;
};
wszystkie funkcje mam zdefiniowane w innym pliku