如何在执行期间使用.h文件而不在C++中编译它?

Gab*_*mas 1 c c++

编译程序后我必须使用头文件.由于客户请求,此标头从服务器下载.在标题内部有3个数组和1个int,我想在执行期间阅读.

我的第一个解决方案是编写解析器.头文件总是具有相同的模式,所以我可以写4行来读取数组和int.

还有其他解决方案吗?ho知道,也许是动态包含和预编译头.


这是完整的解释:

我正在使用Qualcomm AR SDK开发原生Android应用程序.

使用您自己的3D模型的一种技术是使用这个perl脚本:http://heikobehrens.net/2009/08/27/obj2opengl/.基本上你需要2个文件:带有顶点,法线和纹理坐标的标题以及纹理.上面的脚本可以从.obj文件中生成此标头.

好的,现在您已准备好在本机C/C++中使用这两个文件来呈现模型.您可以编译此标题并将其包含在应用程序中的任何位置.但是,例如,当用户按下按钮时,我的应用程序需要下载此标题和纹理.纹理很容易阅读,但我还需要在执行时读取标题.因为我不是C/C++专家,所以我在这里询问是否有机会在执行时链接标题.

但是现在无所谓因为我已经编写了一个解析器,所以我可以在执行时使用顶点,纹理坐标和法线.

jal*_*alf 8

C++(通常)是一种静态编译的语言.你编译它,并获得一些可执行代码,你可以运行.编译前后的两个阶段与彼此无关.在编译时,你处理C++源代码.

在运行时,您将处理从所有源代码生成的单个编译程序.

一旦编译完成,通常无法将"源代码"添加到程序中.

(我在这里简化了一点,我希望这些挑剔的人会原谅我)

您需要做的是将"标题"视为数据,而不是代码.

它是一个包含三个数组和一个int的数据文件.您需要编写程序来打开该文件,读取其内容,解析它并执行必要的操作.

要做到这一点,你需要查看文件I/O来加载文件,字符串操作来处理它的内容,然后是一些逻辑来创建变量来保存数据文件中指定的数据.

但你不能只是"插入"新代码.

  • +1这是应该如何处理答案.如果只有所有SO用户都足够耐心地记住,那么任务就是帮助程序员. (3认同)