c2653没有类或命名空间.hpp / .cpp

时间:2018-02-10 18:07:31

标签: c++

嘿,我是一名C ++初学者,并试图学习基础知识。我试图编译我的代码,但它一直告诉我

  

错误。 (c2653)“框架”:第4行没有类或命名空间。

另一个错误是

  

“sf”:没有类或命名空间

但如果我将#include <SFML\Graphics.hpp>添加到我的Framework.cpp代码中,它就可以解决问题。据我所知,.hpp标头包含cpp文件的所有代码。那么我为什么要两次包含SFML \ Graphics.hpp?

这是我的代码:

#ifndef FRAMEWORKK_H

#define FRAMEWORKK_H

#include <iostream>
#include <SFML\Graphics.hpp>
#include "stdafx.h"
class Framework
{
public:
    Framework();
    ~Framework();

void run();


private:

void quit();

void update();
void handleEvent();
void render();
sf::RenderWindow * pRenderWindow;
sf::Event  * pMainEvent;



bool mRun;
};#endif

这是我的.cpp代码

#include "Frameworkk.h"
#include "stdafx.h"

Framework::Framework(){
    pRenderWindow = new sf::RenderWindow(sf::VideoMode(800, 600, 32), 
"Spiel");
    pMainEvent = new sf::Event;
    mRun = true;
}
Framework::~Framework()
{

}


void Framework::run()
{
    while (mRun)
    {
        update();
        handleEvent();
        render();

        quit();
    }
}

void Framework::quit()
{
    if (!mRun)
    {
        pRenderWindow->close();
    }
}


void Framework::update()
{

}





void Framework::handleEvent()
{
    while (pRenderWindow->pollEvent(*pMainEvent))
    {
        if (pMainEvent->type == sf::Event::Closed)
        {
            mRun = false;
        }
    }
}


void Framework::render()
{
    pRenderWindow->clear(sf::Color(120, 120, 120));
    pRenderWindow->display();
}

0 个答案:

没有答案