C++ 多平台C++;项目结构

C++ 多平台C++;项目结构,c++,directory,structure,project,C++,Directory,Structure,Project,我实际上需要关于如何构造我的项目(目录树)的帮助。 我计划编写一个分为多个部分的网络库(一个用于服务器,一个用于客户端等) 我实际上是在Windows上编写代码,但我计划在将来使其成为多平台的 我当前的设置是: Solution folder - doc // Doxygen generated documentation - include // Public headers - lib // Output libra

我实际上需要关于如何构造我的项目(目录树)的帮助。 我计划编写一个分为多个部分的网络库(一个用于服务器,一个用于客户端等)

我实际上是在Windows上编写代码,但我计划在将来使其成为多平台的

我当前的设置是:

Solution folder
    - doc           // Doxygen generated documentation
    - include       // Public headers
    - lib           // Output libraries
        - Debug
        - Release
    - source        // Private implementation and headers
    Doxyfile
    Solution.sln
我的问题是,我应该把每个IDE的项目文件放在哪里?
Visual Studio为每个项目生成多个文件,我不知道应该将它们存储在何处,因为可能还有另一个IDE也可以这样做。

如果要创建跨平台项目,只需使用适合该任务的IDE和编程语言即可。例如,您可以使用Eclipse来获得C++支持,并为您的项目提供一个可以在多个操作系统上运行的输出。

< P>不包括任何项目中由“代码> IDE <代码>生成的文件。让每个开发人员选择自己的
IDE
。分发源代码时,只需打包与程序/库本身相关的文件,并让每个开发人员将其导入自己的首选
IDE

您必须选择一些跨平台的方式来构建progs/libs

Makefile
非常通用。大多数
ide
都可以从其
Makefile
运行项目。或者,您可以使用许多跨平台构建系统中的一个,这些系统生成
Makefile


此外,您可能希望对源代码进行版本控制,例如

对于每个平台,将执行不同的代码集,因此每个平台将有单独的代码库,否则将无法编译。解决方案是为平台特定的功能提供单独的文件,并为平台标记该文件,维护一个代码库。要在平台上工作,请从存储库中提取特定于平台的必需代码。下面是一个例子

我的问题是关于哪个目录应该包含.vcxproj文件。我从来没有使用过Makefile,我甚至不认为VS支持它(它只能导入一个,但仍然是vcxproj)。我想创建一个构建目录,然后创建一个名为msvc14的子文件夹,项目将在其中,这是一个好的设置吗?@Antony不幸的是VS不是一个多平台IDE。如果您希望您的项目是多平台的,那么您确实需要使用多平台构建系统。这不会阻止你使用VS,也不会阻止你为那些碰巧使用VS的人分发VS项目文件。但是其他平台上的人需要一些他们可以使用的东西。