我得到一个LNK1561入口点必须定义错误我尝试过我自己作为stsyem设置到控制台,它仍然没有工作。这是SDl.h每个类的代码,来自SDL.h下载页面。
main.cpp中:
#include <iostream>
#include "MainGame.h"
int main(int argc, char** argv) {
std::cout << "Enter any ket to quit...";
int a;
std::cin >> a;
return 0;
}
MainGame.cpp:
#include "MainGame.h"
MainGame::MainGame()
{
_window = nullptr;
_screenHeight = 1028;
_screenWidth = 768;
}
MainGame::~MainGame()
{
}
void MainGame::run() {
InitSystems();
}
void MainGame::InitSystems() {
SDL_Init(SDL_INIT_EVERYTHING);
_window = SDL_CreateWindow("title", SDL_WINDOWPOS_CENTERED,
SDL_WINDOWPOS_CENTERED, 1028, 768, SDL_WINDOW_OPENGL);
}
MainGame.h:
#pragma once
#include <SDL/SDL.h>
class MainGame
{
public:
MainGame();
~MainGame();
void run();
void InitSystems();
private:
SDL_Window* _window;
int _screenWidth;
int _screenHeight;
};
Allt他的代码是在你的计算机上打开一个Windowed框架打开一个控制台,文本按Any cla退出...如果我删除了SDL.h include和SDL代码,如果我放入包含它返回而不是SDL代码,它再次给出错误。
答案 0 :(得分:1)
您是否尝试过在主要功能中使用MainGame?编译器可能会假设它从未使用过,并且您没有使#include <SDL/SDL.h>
指令起作用。另外,请考虑将#include <SDL/SDL.h>
更改为#include "SDL/SDL.h"
。
对于未使用SDL_Main
作为入口点的情况,您也可以考虑使用SDL_SetMainReady。