Visual Studio 编译源文件的顺序是什么?

2023-12-12

我在 Visual Studio 2012 中有一个 C++ 库项目,包含这些文件

A.h, A.cpp: defines function Do_A();
B.h, B.cpp: defines function Do_B();
C.h, C.cpp: defines function Do_C();

功能是这样实现的

void Do_A()
{
      Do_B();
}

void Do_B()
{
      Do_C();
}

void Do_C()
{
     printf("Do C");
}

这里我想强制A、B、C之间的依赖关系。然后我构建。

但是当查看输出窗口时,我看到

A.cpp
B.cpp
C.cpp

为什么A先编译?什么影响源文件的编译顺序?


该依赖关系是在链接时,而不是编译时(因此不会在此处显示)。

构建脚本内的位置会影响编译顺序(除了编译时依赖性之外,对此没有任何假设),但这在一定程度上是不正确的,因为构建可以并行化。也就是说,A 和 B 可以同时构建在两个不同的内核上。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Visual Studio 编译源文件的顺序是什么? 的相关文章

  • Visual Studio 2015/2017 中的 TSLint?

    我的组织使用TSLint https github com palantir tslint 我们非常重视 Typescript 代码的质量检查 它为我们提供了有价值的服务 然而 我们使用 Visual Studio 2015 和 2017
  • 缺少 ASP.NET 5 模板

    我正在遵循此设置教程 https docs asp net en latest tutorials your first aspnet application html create a new asp net 5 project http
  • 我是否需要 SQL Server 数据库项目中链接服务器的数据库引用?

    在我的数据库项目中 我添加了对链接服务器的引用 当我在视图中使用此链接服务器并尝试构建数据库项目时 SSDT 报告错误 因为它无法理解对链接服务器上引用的任何架构的引用 LinkedServer DB1 dbo Table1 上面的代码会返
  • 归档时出现“没有此类模块”错误

    我的 Swift 4 应用程序在所有模拟器上重建并成功运行 除了Generic iOS Device 如果我尝试将其存档或重建Generic iOS Device 我得到一个No such module与我的 Pod 框架之一相关的错误 我
  • 什么是应用程序二进制接口 (ABI)?

    我从来没有清楚地理解什么是 ABI 请不要向我指出维基百科文章 如果我能理解的话 我就不会在这里发这么长的帖子了 这是我对不同接口的看法 电视遥控器是用户和电视之间的接口 它是一个现有的实体 但本身没有用 不提供任何功能 遥控器上每个按钮的
  • Visual Studio 2015 Enterprise 附带测试自动化工具?

    管理层正在研究自动化测试 我们的 QA 主管想知道 Visual Studio 2015 Enterprise 和 Team Foundation Server 2012 是否附带了任何自动化测试工具 据我所知 微软提供了一套工具作为一个单
  • 为什么 Visual Studio 尝试安装到 Program Files (x86)?

    当我启动 VS 2017 安装程序时 默认安装目录设置为 Program Files x86 我在 64 位计算机上使用 Windows 10 x64 操作系统 我从这个链接下载的https www visualstudio com dow
  • 将代码拆分为多个 .cpp 会减少编译时间吗?

    假设我正在处理一个相当复杂的课程 一半的方法已经完成并经过测试 但我仍在开发另一半 如果我将完成的代码放在一个 cpp 中 将其余代码放在另一个 cpp 中 那么当我仅更改 正在进行的 cpp 中的代码时 Visual Studio 或任何
  • Maven 或 Ivy 用于管理 Ant 的依赖关系?

    我想知道管理 ant 项目依赖关系的最佳方法 Maven Ant 任务和 Ivy 的优缺点是什么 由于您想要做的是将依赖项管理添加到现有的 Ant 项目中 这正是 Ivy 的设计目的 依赖管理是 Maven 的重要组成部分 但远非全部 Ma
  • 如何将 Visual Studio 2015 Update 1 升级到 Update 2?

    Visual Studio 2015 Update 2 已发布 但它没有详细说明从 Update 1 升级到 Update 2 的任何方法 并且 扩展和更新 对话框中没有显示任何更新 有人知道从 Update 1 升级到 Update 2
  • VIsual Studio 2022 卡在恢复 Nuget 包上

    我和这里的人有同样的问题 Visual Studio 陷入 恢复解决方案包 的困境 https stackoverflow com questions 63610066 visual studio get stuck on restorin
  • 提交 Subversion 后“无法更新项目的依赖项”

    我在 NET 中有一个安装项目 当我将项目和其他项目保存到 subversion 时 安装项目不再编译 我收到错误 无法更新项目的依赖项 关闭 VS2010 然后重新打开它一直对我有用
  • 评估指令时出现 Proguard 错误

    我将我的android项目升级到24 SDK版本 但是我在构建的 Proguard 路径中遇到错误 Unexpected error while evaluating instruction Class com google android
  • 完整的端到端教程 C++ 与 MYSQL Server 5.5

    我花了几个小时寻找关于如何使用 MYSQL Server 5 5 进行查询的完整端到端教程 这是使用 Visual Studio 2010 Express 的 Visual C 控制台应用程序 有人看过这个设置的实际工作教程吗 当所有内容都
  • 传统 n 层设计中具有多个项目的 Git 存储库的最佳实践

    我正在从集中式 SCM 系统切换到 GIT 好吧 我承认是哪一个 它是 Visual SourceSafe 因此 除了克服 Git 命令和工作流程的学习曲线之外 我目前面临的最大问题是如何将我们当前的存储库迁移到 Git 对于单个存储库或多
  • Java:特定枚举和通用 Enum 参数

    我想将任何枚举值传递给实用程序类中的方法并获取相同枚举类型的另一个枚举值 像这样的事情 public class XMLUtils public static Enum defaultValue if element hasAttribut
  • 在哪里可以找到漂亮的 Dark ReSharper(颜色标识符 = 打开)主题?

    我还没有遇到过任何像样的深色 Visual Studio 2008 颜色主题 支持锐锐 http www jetbrains com resharper s 颜色标识符打开 有出版过的吗 我创建了一个深色主题 它使用 Resharper 提
  • Visual Studio不记得打开的文档和启动项目

    过去一周 我的 VS 解决方案发生了一些变化 但我还没有找到修复它的设置 当我关闭解决方案并重新启动时 启动项目恢复到与我上次关闭时选择的不同的项目 我的项目层次结构与关闭时不同 每个项目都扩展了 关闭时打开的文档全部关闭 在每种情况下 我
  • Microsoft.Build.Evaluation.Project 在 VS 中添加项目的文件夹和文件强制刷新

    我正在创建一个应用程序 它将向 Visual Studio 中加载的现有项目添加一些文件和文件夹 这可行 但它总是会弹出一条消息 告诉用户 我 刷新项目以显示新文件 使用实体框架并添加迁移时 它会将文件添加到当前加载的项目中 并且不会询问用
  • 如何在 Visual Studio 2008 中设置 SSRS ConsumeContainerWhitespace 属性?

    我正在尝试设置ConsumeContainerWhitespace使用 Visual Studio 2008 中的报表设计器 但我在 GUI 中找不到该属性 由于我找不到它 我想知道这是否是 VS 2010 的新功能 是否可以在 VS 20

随机推荐