C ++ const结构指针不可访问

时间:2011-08-09 16:10:18

标签: c++ pointers struct const

我在课堂上宣布了const struct aiScene *scene;

在我定义scene = importer.ReadFile(file, aiProcess_Triangulate);的函数中,可以访问场景结构。我可以打印scene->mNumMeshes例如。

问题是该场景不能与其他功能相关联。如果我尝试打印出scene->mNumMeshes,那么每次打印不同的数字(内存地址?)。

如何让课程中的每个功能都可以访问场景?

1 个答案:

答案 0 :(得分:2)

如果不知道importer.ReadFile中的内容,就不可能确定,但​​是好的猜测是importer.ReadFile返回指向堆栈结构的指针。返回后,该结构将很快被其他数据覆盖 - 在您的第一个实验中,您可能只是幸运地在重新使用该位置之前获得它。

确保ReadFile返回堆分配的结构而不是本地结构。