c++ - C/C++ 巨大的头文件/源代码

标签 c++ c header

在我的 C 项目中,我正在从一个 obj 文件和一个用于 opengl 的图像文件中读取数据。所有数据合并到 1 个头文件中。

示例(伪代码):

vertices = {
 0 , 2, 4,
 ....
};

normals = {
 0, 0, 0, 
 ....
};

texture_pixels = {
 0, 0, 0
...
}

问题是所有这些数据加起来就是一个 15mb 的 header 。有这么大的标题是个坏主意吗?这会导致我的程序出现任何问题吗?

最佳答案

是使用大头文件还是使用其他方法取决于应用程序。

头文件是在编译时处理的。如果文件不经常编译,或者编译时间快到可以接受,则没有问题。

如果头文件即使在其部署配置中也经常更新(比如每天不止一次),也许可以重新设计程序以从网络、SD 卡、磁盘或其他设备的数据文件中读取等效数据你有什么。

数据文件有其自身的弱点:

  • 它们是与可能需要保持同步的程序可执行文件不同的独立部分。
  • 文件格式受大端与小端问题的影响,除非它以某种字符格式(如 XML)编码。
  • 程序应该如何找到数据?命令行参数、硬编码路径等
  • 如果找不到文件,怎么办?

关于c++ - C/C++ 巨大的头文件/源代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25705728/

相关文章:

c++ - 正常 block 后检测到堆损坏(#174)

c - 使用异步套接字让服务器处理多个客户端

Angular 2不使用JWT身份验证发送授权 header

c++ - 如何在 C++ 中使用指针正确设计类的层次结构

c++ - vcl.h : No such file or directory

c++ - 关于我的编译器中缺少的 stdafx.h(Windows 上的 mingw32)

c - 是否可以让 ESP8266 在 WPA2 企业网络上运行?

C 字符串错误 - 需要理解代码

带有位图字体的 C 头文件

C++ 未定义的方法引用