如何以模块化方式组织源代码[关闭]

Posted

技术标签:

【中文标题】如何以模块化方式组织源代码[关闭]【英文标题】:How to organise source code in a modular manner [closed] 【发布时间】:2009-05-15 01:32:34 【问题描述】:

我目前正在开展一个项目,该项目的范围会变得非常大,但是对于 C++ 来说相对较新并且具有 Java 背景,我不确定最好的方法。

我想要一个类似的目录结构:

+ Root
- main.cpp
    + Engine
        + Core
        - foo.cpp
        - foo.h
        + Utilities
        - bar.cpp
        - bar.h
        + Sound
        + Input
        + Collision Detection
        + Particle System

目前,我在 Engine 目录中有大量 .ccp/.h 文件。当我将它们移动到相应的文件夹并尝试将它们绑定在一起时,我只会得到与未定义类相关的编译错误页面。一些善良的灵魂可以帮助新手指出正确的方向吗?!

【问题讨论】:

可能相关且有帮助:***.com/questions/266202/… 【参考方案1】:

您几乎肯定会遇到包含包含文件的问题。您需要为要从中引入 .h 文件的目录添加编译命令 -I 标志。

您的几个目录名称中有空格,因此请注意正确引用目录名称。或者,更好的是,因为这通常是一个主要的痛苦,所以将“碰撞检测”更改为“碰撞检测”或“碰撞检测”

【讨论】:

一针见血,我没能告诉编译器 .h 文件所在的目录。非常感谢!【参考方案2】:

如果您使用 makefile 编译项目,我建议您切换到 CMake,这将简化您构建目标模块化结构的方式。 CMake 关键字“include_directories”是您需要的关键字。

【讨论】:

以上是关于如何以模块化方式组织源代码[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何以正确的方式编写代码内注释和文档?这有啥标准吗? [关闭]

组织 Web 应用程序 [关闭]

如何以安全的方式为其他开发人员构建框架或库? [关闭]

python之模块和包

如何以编程方式可视化 XML 模式? [关闭]

如何组织golang项目? [关闭]