之前遇到过c风格stb文件库只能在一个cpp中引用, 如果放头文件就会重复引用问题, 这让人很不爽, 今天在了解一个格网优化库得时候看到一种解决方案:
1:总体流程就是定义一个头文件 引用stb文件:gltfpack.h
2:定义一个cpp 文件gltfpack.cpp引用gltfpack.h, 并在引用gltfpack.h文件前定义实现宏
3: 其他需要调用stb风格得cpp只用引用gltfpack.h文件即可, 其他cpp的实现函数如果包含stb的数据结构声明只需要声明在gltfpack.h 中即可.
gltfpack.h

gltfpack.cpp

其他cpp:


本文介绍了一种避免C风格库如stb在多个cpp文件中重复引用的方法。通过定义一个头文件和cpp文件,将库的实现封装,并使用预处理器宏来控制引用,使得其他cpp文件只需引用头文件即可,从而解决了重复引用问题。

1239

被折叠的 条评论
为什么被折叠?



