C++ 直接访问未声明类的数据
我们有一个类模型,里面有一个函数,它返回一个带有参数的类网格实例。在类中,Mesh有一个带参数的构造函数和几个公共字段:C++ 直接访问未声明类的数据,c++,class,C++,Class,我们有一个类模型,里面有一个函数,它返回一个带有参数的类网格实例。在类中,Mesh有一个带参数的构造函数和几个公共字段: class Model { public: Model(string path) { this->loadModel(path); } Mesh loadModel(string path) { vector<GLfloat> vertices; vector<G
class Model
{
public:
Model(string path)
{
this->loadModel(path);
}
Mesh loadModel(string path)
{
vector<GLfloat> vertices;
vector<GLuint> indices;
...
return Mesh (vertices, indices);
}
};
class Mesh
{
public:
vector<GLfloat> vertices;
vector<GLuint> indices;
Mesh(vector<GLfloat> vertices, vector<GLuint> indices)
{
this->vertices = vertices;
this->indices = indices;
this->loadMesh();
}
void loadMesh()
{
//sending data to OpenGL
}
};
int main()
{
Model model("folder/...");
return 0;
}
类模型
{
公众:
模型(字符串路径)
{
此->加载模型(路径);
}
网格加载模型(字符串路径)
{
向量顶点;
向量指数;
...
返回网格(顶点、索引);
}
};
类网格
{
公众:
向量顶点;
向量指数;
网格(向量顶点、向量索引)
{
这->顶点=顶点;
这->索引=索引;
此->加载网格();
}
void loadMesh()
{
//向OpenGL发送数据
}
};
int main()
{
模型(“文件夹/…”);
返回0;
}
在main函数中,我们只声明模型类。网格类是动态创建的,并将数据发送到OpenGL。
我们如何在main函数中访问类Mesh的字段(垂直、标记)?或者它已经不在了?谢谢大家!
Model::loadModel
返回一个Mesh
对象。自从排队
this->loadModel(path);
对该返回值不执行任何操作,当该返回对象被销毁时,其信息将丢失