c++ - 寻找用于学习如何启动项目的示例 C++ 程序

标签 c++ project-management project-planning code-organization project-organization

<分区>

我学了最基础的C++,但感觉不知道如何组织代码,如何启动C++项目。我搜索了有关项目/代码组织的指南,但运气不佳。

所以我想找一个编码良好的真实程序,看看它是如何组织的,但我一无所获。有谁知道真正组织良好的 C++ 程序?最好是开源的、基于终端的和 unix-only。

谢谢。

最佳答案

这主要取决于几件事:

  1. 支持的平台:如果您以不同的方式抽象不同的平台,这将插入或拉动您走向不同的代码结构。
  2. 构建系统:诸如 CMake、qmake、autocr*p、Ant、Bjam、jam 等...
  3. IDE:这不会成为阻碍,但仍然可以决定第二名。
  4. 它是一个 GUI 或仅控制台还是库项目:这将 IMO 迫使您以不同的方式构建您的程序,特别是如果您遵守拆分 GUI 和“处理”功能的潜规则。一个库将需要一个很好的 API header 集,另一个(非库 API 绑定(bind))项目将让您在这方面自由。
  5. 你认为最好的是什么?如果您在某个设置中感觉不对,请不要使用它并进行重构(当然,如果它不会占用您所有的时间...

我刚刚开始了一个不起眼的 C++ 项目,有一个小的平台抽象层,也许这可以给你一些提示/建议。源代码可在此处查看(它现在完全不起作用,使用 qmake 构建):http://sourceforge.net/p/ambrosia/git -> 浏览

我做了什么: - 一个平台抽象 header ,它提供独立于平台的函数定义,这些定义在(当前)每个平台的一个源文件中实现。 - 一个全局 header ,包括多个 header ,其中包含几乎所有地方都需要的东西。 - 一些子文件夹根据代码的目标进行逻辑组织。

关于c++ - 寻找用于学习如何启动项目的示例 C++ 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4208264/

相关文章:

project-management - XP vs 传统的优秀项目管理

project-management - 如何降低维护成本

php - 实现无需注册的投票系统

project-planning - 80/20 时间管理规则是否适用于开发人员?

c++ - auto_ptr 和原始指针之间的 const 区别?

c++ - 在类外调用的私有(private)函数成员

c++ - 如何在 Gtkmm3 中使用 CssStyleProvider

c++ - 在构造函数中初始化数组或 vector

version-control - 带有 Mercurial 源代码控制的 TFS

c# - 如何设置测试项目(命名空间、有用的辅助对象等)?