C++ visualc+中的文件夹结构+;当有许多项目相互依赖时
假设我有一个包含10个项目(名为proj1到proj10)的sln,proj1是生成EXE文件的默认项目 我的问题是:如何放置“include”文件夹? 我的意思是,如果proj2使用proj3(包括其头文件和链接其lib文件),如何放置“include”文件夹 有两种方法:C++ visualc+中的文件夹结构+;当有许多项目相互依赖时,c++,visual-studio,include-path,directory-structure,C++,Visual Studio,Include Path,Directory Structure,假设我有一个包含10个项目(名为proj1到proj10)的sln,proj1是生成EXE文件的默认项目 我的问题是:如何放置“include”文件夹? 我的意思是,如果proj2使用proj3(包括其头文件和链接其lib文件),如何放置“include”文件夹 有两种方法: 将所有头文件和库文件放在项目同一级别的不同根文件夹中 使每个项目都自我关闭,并且希望使用此项目的其他项目应注意包含路径和链接路径。当然,我们应该为每个项目的布局制定规则(例如,每个项目的根文件夹中必须有一个“include
谢谢说到VisualStudio,我不喜欢你建议的两种方法中的任何一种,尽管我的方法与你的选择关系最为密切#2。我喜欢这样组织:
<SolutionRoot>
<Project1>
project1.vcxproj
someheader.h
somesource.cpp
<Project2>
<Project3>
<Project4>
<Project5>
application.sln
这样做的好处是你不会把你的“额外包含”搞得乱七八糟,所以很容易一眼就能看出一个项目有哪些外部包含
至于链接到lib文件,为什么不利用visualstudio的项目引用功能呢。老实说,你的生活会更轻松。只需将其连接起来,使Project2引用Project1,等等。。。这样您就不必担心库和链接器路径。您只能对解决方案树之外的工具包(例如libpng或openssl等发行版)执行此操作
同样,您可以释放该设置,使其仅显示解决方案之外的链接。另一个优点是,如果使用引用,则生成顺序是隐式定义的。对于Visual Studio,我不喜欢您建议的两种方法中的任何一种,尽管我的方法与您的选项关系最为密切#2。我喜欢这样组织:
<SolutionRoot>
<Project1>
project1.vcxproj
someheader.h
somesource.cpp
<Project2>
<Project3>
<Project4>
<Project5>
application.sln
这样做的好处是你不会把你的“额外包含”搞得乱七八糟,所以很容易一眼就能看出一个项目有哪些外部包含
至于链接到lib文件,为什么不利用visualstudio的项目引用功能呢。老实说,你的生活会更轻松。只需将其连接起来,使Project2引用Project1,等等。。。这样您就不必担心库和链接器路径。您只能对解决方案树之外的工具包(例如libpng或openssl等发行版)执行此操作
同样,您可以释放该设置,使其仅显示解决方案之外的链接。另一个优点是,如果使用引用,构建顺序是隐式定义的。我会选择第一种解决方案。它使项目设置变得简单。作为我们工作的C++项目,我们总是把头文件放在一起。< P>我会使用第一个解决方案。它使项目设置变得简单。作为我们工作的C++项目,我们总是把头文件放在一起。