设置 DirectXTK 鼠标和键盘会出现未解析的外部符号

Setting up DirectXTK mouse and keyboard gives Unresolved external symbol

我按照这里的教程:鼠标和键盘输入 如果删除与 DirectX 有关的所有内容,我不会收到任何错误消息。如果我使用指针 insted 然后我得到一个错误,说我的 inputhandler 构造函数被删除。有任何想法吗? h

   #pragma once

#include <Windows.h>
#include "DirectXTK-master\Inc\Keyboard.h"
#include "DirectXTK-master\Inc\Mouse.h"

class InputHandler
{
public:
    InputHandler();

    InputHandler(HWND wndHandle);
    ~InputHandler();

    void updateInput();

private:
    std::unique_ptr<DirectX::Keyboard> keyboard;
    std::unique_ptr<DirectX::Mouse> mouse;

};

cpp

#include "InputHandler.h"



InputHandler::InputHandler()
{
}


InputHandler::InputHandler(HWND wndHandle)
{
    keyboard = std::make_unique<DirectX::Keyboard>();
    mouse = std::make_unique<DirectX::Mouse>();
    mouse->SetWindow(wndHandle);
}

InputHandler::~InputHandler()
{
}

void InputHandler::updateInput()
{
    auto kb = keyboard->GetState();
    if (kb.Escape)
        PostQuitMessage(0);

    auto mouseState = mouse->GetState();
}

您仍然需要link DirectX Tool Kit 静态库。本教程假定您正在使用 NuGet 包或已根据 Adding the DirectX Tool Kit 教程步骤添加对 DirectXTK 项目的引用,这会将静态库添加到您的项目构建中。