cost 285 ms
翻译单元是否有效 C++? 并且是 g++ -E 的 output 的翻译单元(对于 GCC)? - Is a translation unit valid C++? And is a translation unit (for GCC) the output of g++ -E?

我确信翻译单元是一个.cpp文件(或者,为了避免引用扩展名,一个文件,你将提供给 `g++ -c theTranslationUnit.cpp -o 不管什么。o)一旦你将宏替换为它,复制并粘贴#include (递归),并删除评论。 换句话说,我认为它是“获取 C++ 文件并处理所有#并删除其中 ...

如果前者只提供后者定义的声明,我是否应该在相关的 cpp 文件中包含 header ? - Is there any reason I should include a header in the associated cpp file if the former only provides declarations the latter defines?

考虑具有以下内容的foo.cpp文件#include "foo.hpp" int foo() { return 7; } 及其关联的 header#pragma once int foo(); 显然需要后者来了解以下main function 的存在foo :#include < ...

多次#included 保护的 header 文件将如何在不同的翻译单元内? - How a multiple times #included guarded header file will be inside different translation units?

我知道#inclusion 通常被描述为文本复制粘贴预处理器指令。 现在,如果 header 被 #include 保护或 #pragma 一次,那么我们如何描述经过第一个翻译单元到 #include 所说的 header 之后实际发生的事情? ...

一个模块中有多少个翻译单元? - How many translation units in one module?

具有多个源文件 (.cpp) 的模块是否具有一个或多个翻译单元? 我的理解是每个单独的源文件(.cpp)都将是它自己的翻译单元,除非它被包含在内,并且#pragma onced(我猜这是一种弊端),但我不知道这是如何在模块化程序中完成的. 如果有什么不同,那我对Visual Studio C++开 ...

header 文件中的“#pragma GCC system_header”是否扩展到另一个源或包含它的 header 文件? - Does `#pragma GCC system_header` in a header file extend into another source or header file that includes it?

我需要禁用某个 header 文件中的所有警告,并且仅禁用该文件。 我的编译器版本是g++-4.8 。 我必须使用那个编译器。 我查看了该编译器的文档: g++-4.8 documentation support for System-Headers 这个已经写完了: 当 GCC 正在处理系统 h ...

不同 TU 中类模板全特化的成员函数定义 - Definitions of member fuction of class template full specialization in separate TUs

给定一个类模板,编译需要很长时间。 在开发和调试期间,我想通过将成员函数的定义分离到单独的翻译单元来减少编译时间。 只是为了完全专业化(这也是为了减少编译时间)。 是否可以在 C++ 中通过将类模板完全特化的成员函数的定义放入单独的 TU 来分离它们? template<> voi ...

是否可以对所有翻译单元进行定义? - Can a define be made across all translation units?

是否可以跨所有翻译单元进行 #define 或类似的预处理器定义? 标头实现对于非常小的库很有用,因为所有代码都可以包含和分布在具有以下结构的单个标头中: 然而,这种结构要求用户在头文件只包含在他们的一个翻译单元中之前定义IMPLEMENT_LIBRARY ,这意味着它不能放在用户的头文件中, ...

我应该声明我的 function 模板专业化还是足够定义它们? - Should I declare my function template specializations or is defining them enough?

我有一些可以检查的课程。 实现这一点的代码在 header 文件中声明了一个 function 模板,并将其专门用于不同的源文件: 这段代码是这样使用的: 这工作得很好。 当我添加另一个我可以检查的 class Class3时,我不需要触摸 header 文件,因为它定义了一个非常宽的接口。 如果 ...

c ++ 17内联+ thread_local vs thread_local - c++17 inline + thread_local vs thread_local

我想知道以下两个声明之间的区别是什么,如果两者都写在一个头文件中: 如 C++17 中所述,向变量添加内联会强制所有翻译单元看到该变量的相同地址。 这是否意味着obj2可以在不同的翻译单元中获得不同的地址值? 强调我们应该使用obj1而不是obj2什么? ...

在头文件中定义的静态对象和在 cpp 文件中定义的静态对象有什么区别? - What is the difference between static objects defined in a header file and static objects defined in a cpp file?

假设我有一个头文件,并假设复制宏已处理:f1.h: 在包含此标头的任何地方,翻译单元都将拥有自己的 obj 副本。 那么,如果 a.cpp、b.cpp 和 ch 包含这个头文件,obj 将被实例化 3 次? 现在,如果我有以下内容: f2.h: f2.cpp: 在这种情况下,我的 ...

我可以在不同的TU中提供相同的功能定义吗? - Could I provide same function definition in different TUs

我正在阅读内部和外部链接,我发现默认情况下一个函数有一个外部链接。 所以我在想是否可以在头文件管理器中声明一个函数,并在不同的翻译单元中提供它的多个定义。 到目前为止,我确实在头文件中声明了一个功能 并在两个文件中提供2个定义,每个文件都包含在一个匿名命名空间中: 但 ...

在单例模式中,什么使实例独一无二? - In singleton pattern what makes instance unique?

在实践中,使用简单的静态函数创建单例模式,该函数返回一个本地静态变量。 只要实例是静态的,它就会返回在第一次函数调用期间定义一次的相同变量。 对我来说令人困惑的部分是,如果我在一个头文件中声明具有静态局部变量的常规静态函数,并且当它们调用该函数时将该头部包含在两个不同的转换单元中,则将函 ...

有没有一种方法可以使链接程序从库中提取目标文件的一部分进行链接? - Is there a way to have a linker pull part of an object file from a library for linking?

我有一个包含成千上万个C文件,许多库和数十个程序的项目,以链接并加快编译速度,我正在将C文件合并为包含多个C文件的翻译单元。 有时将其称为单一编译单元,单一翻译单元或统一构建。 我将这些翻译单元中的多个编译成不同的库,并且这些库以前是通过分别编译每个C文件来创建的。 例如: ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM