在Visual Studio 2013 C ++中,我已经明确定义了一个类,并且收到错误,说它不是类

时间:2016-02-24 04:09:55

标签: c++ visual-studio class compiler-errors

这是我的类(网格)

的头文件
#ifdef MESH_H
#define MESH_H
#include <glm\glm.hpp>
#include <GL\glew.h>
class Vertex
{
public:
    Vertex(const glm::vec3& pos)
    {
        this->pos = pos;
    }
protected:
private:
    glm::vec3 pos;

};

class Mesh
{
public:
    Mesh(Vertex* vertices, unsigned int numVertices);

    void Draw();

    virtual ~Mesh();

protected:
private:
    Mesh(const Mesh& other);
    void operator = (const Mesh& other);

    enum 
    {
        POSITION_VB,

        NUM_BUFFERS
    }

    GLuint g_vertexArrayObject;
    GLuint g_vertexArrayBuffers(NUM_BUFFERS);
    unsigned int g_drawCount;
};
#endif

这是我得到的主要错误。所有其他错误都是基于这个错误。

Error 1 error C2653: 'Mesh' : is not a class or namespace name

请帮助我,因为这没有任何意义,因为我已经明确定义了#34; mesh&#34;作为一个班级。感谢

1 个答案:

答案 0 :(得分:6)

您的课程实际上并未定义。 我认为#ifdef MESH_H应为#ifndef MESH_H