ウィンドウの作成や入力の処理などに SFML を使用して OpenGL を独習してきました。4X_vertex.h と 4X_vertex.cpp (4X はプロジェクトの名前) を作成し、関連する関数と構造体をメインからこれらのファイルに移動しました。ただし、コンパイルするとエラーが発生します
variable or field "drawVertexArray" declared void
私の調査によると、これは次のエラーに関連する役に立たないメッセージにすぎないようです。
vertex was not declared in this scope
my からのインクルードのリストは次のmain.cpp
とおりです。
#include <iostream>
#include <fstream>
#include <string>
#include <SFML/System.hpp>
#include <SFML/Window.hpp>
#include <SFML/Graphics.hpp>
#include "4x_vertex.h"
#include "4x_constants.h"
私の4X_vertex.h
:
#ifndef _4X_VERT_H
#define _4X_VERT_H
struct vertex{
GLfloat x,y,z;
GLfloat r,g,b;
};
void drawVertexArray(vertex v[]);
vertex* loadVertexData();
#include "4X_vertex.cpp"
#endif
その部分が4X_vertex.cpp
私に問題を与えています:
using namespace std;
void drawVertexArray(vertex v[]){
... openGL stuff...
}
これらはすべて、移動を開始する前に機能していたので、インクルードなどで何か奇妙なことが起こっていると思います。すべてのヘルプは大歓迎です!