header-files相关内容

<conio.h> 在哪里?Linux上的头文件?为什么我找不到 <conio.h>?

可能的重复: Linux如何实现C的getch()函数? MS-DOS 中 conio.h 头文件的等效 Linux 版本是什么? 有没有办法替换它的功能?例如getch() 我使用 gcc 和文本编辑器 Geany 来编译 C 代码. 解决方案 conio.h 是一个 C 头文件,与旧的 MS-DOS 编译器一起使用以创建文本用户界面.针对其他操作系统(例如基于 Li ..
发布时间:2021-12-02 08:24:58 服务器开发

为什么我不应该包含 cpp 文件而是使用标题?

所以我完成了我的第一个 C++ 编程作业并获得了成绩.但是根据评分,我失去了包含cpp文件而不是编译和链接它们的分数.我不太清楚这意味着什么. 回顾我的代码,我选择不为我的类创建头文件,而是在 cpp 文件中执行所有操作(它似乎在没有头文件的情况下也能正常工作...).我猜评分者的意思是我写了'#include "mycppfile.cpp";'在我的一些文件中. 我使用 #inclu ..
发布时间:2021-12-01 15:32:59 C/C++开发

为什么我的包含守卫不阻止递归包含和多个符号定义?

关于包含守卫的两个常见问题: 第一个问题: 为什么不包含保护保护我的头文件免于相互、递归包含?每次我编写类似以下内容时,我都会收到关于不存在的符号的错误,这些错误显然存在甚至更奇怪的语法错误: "a.h" #ifndef A_H#定义A_H#include "b.h"...#endif//A_H "b.h" #ifndef B_H#define B_H#include "a ..
发布时间:2021-12-01 15:29:47 C/C++开发

“使用命名空间"在 C++ 头文件中

在我们所有的 c++ 课程中,所有的老师总是将 using namespace std; 放在他们的 .h 文件中的 #include 之后.在我看来,这似乎很危险,因为通过在另一个程序中包含该头文件,我会将命名空间导入到我的程序中,也许没有意识到、有意或想要它(头文件包含可以非常深入地嵌套). 所以我的问题是双重的:using namespace 不应该在头文件中使用,和/或有什么方法可以 ..
发布时间:2021-12-01 15:14:00 C/C++开发

为什么有头文件和 .cpp 文件?

为什么 C++ 有头文件和 .cpp 文件? 解决方案 嗯,主要原因是将接口与实现分离.头文件声明了一个类(或正在实现的任何东西)将做什么,而 cpp 文件定义了它将“如何"执行这些功能. 这减少了依赖关系,因此使用标头的代码不一定需要知道实现的所有细节以及仅需要的任何其他类/标头.这将减少编译时间以及实现中的某些内容发生变化时所需的重新编译量. 它并不完美,您通常会求助于Pi ..
发布时间:2021-12-01 14:54:23 C/C++开发

#include 和有什么区别?和#include“文件名"?

在 C 和 C++ 编程语言中,在 include 语句中使用尖括号和使用引号有什么区别,如下所示? #include #include "文件名" 解决方案 实际上,区别在于预处理器搜索包含文件的位置. 对于 #include ,预处理器以依赖于实现的方式搜索,通常在编译器/IDE 预先指定的搜索目录中.此方法通常用于包含标准库头文件. 对于 #include "fi ..
发布时间:2021-12-01 14:42:11 C/C++开发

在什么情况下我们需要包含 <cassert>?

在什么情况下我们应该包含cassert? 解决方案 总之,不要用;使用 . C++11 删除了“c...."标头不会污染全局命名空间的任何正式保证. 这从来都不是实际的保证,现在甚至都不是正式的保证. 因此,在 C++11 中,使用“c...."头文件变体不再有任何可以想象的优势,而有一个明显的缺点,即代码在一个编译器和它的版本上运行良好编译器,可能无法使用另一个编译器或 ..
发布时间:2021-11-30 11:29:54 C/C++开发

在头文件中初始化常量静态数组

我刚刚发现以下内容无效. //头文件课堂测试{const 静态字符数组[] = { '1', '2', '3' };}; 初始化它的最佳位置在哪里? 解决方案 最好的地方是在源文件中 //头文件课堂测试{const 静态字符数组[];};//源文件const char test::array[] = {'1','2','3'}; 您可以像尝试那样在类声明中初始化整数类型;所有其他类 ..
发布时间:2021-11-18 03:58:54 其他开发

在 Arduino 草图中包含 .cpp 和 .h 文件的正确方法

一、问题: 主草图文件: char foo;//需要清理一些其他问题#include //无奈试了一下,无济于事#include "a.h"无效设置(){Serial.begin(9600);Serial.println("\n测试开始");for (int num = -1; num //a.h #ifndef H_A#define H_Aboolean is ..
发布时间:2021-11-17 04:10:56 其他开发

在 Arduino 草图中包含 .cpp 和 .h 文件的正确方法

一、问题: 主草图文件: char foo;//需要清理一些其他问题#include //无奈试了一下,无济于事#include "a.h"无效设置(){Serial.begin(9600);Serial.println("\n测试开始");for (int num = -1; num //a.h #ifndef H_A#define H_Aboolean is ..
发布时间:2021-11-17 03:44:41 其他开发

'.' 之前的预期不合格 ID令牌 arduino 库

我收到此错误: 在函数“void loop()"中:headers_stepper_test:12:错误:预期'.' 之前的非限定 ID'.' 之前的令牌应为非限定 ID令牌 在这段代码中: #include "StepperMotor.h"无效设置(){//把你的设置代码放在这里,运行一次:步进电机(8,9);}无效循环(){//把你的主要代码放在这里,重复运行:无效 Steppe ..
发布时间:2021-11-17 03:41:12 其他开发

优点 &将所有代码放在 C++ 的头文件中的缺点?

您可以构建一个 C++ 程序,以便(几乎)所有代码都驻留在头文件中.它本质上看起来像一个 C# 或 Java 程序.但是,您确实需要至少一个 .cpp 文件来在编译时拉入所有头文件.现在我知道有些人会绝对讨厌这个想法.但我没有发现这样做的任何令人信服的缺点.我可以列出一些优点: [1] 更快的编译时间.所有头文件只被解析一次,因为只有一个 .cpp 文件.此外,一个头文件不能被多次包含,否则 ..
发布时间:2021-11-17 01:43:56 其他开发

只公开需要的信息,不包括不必要的头文件

我想要一个进程公开一个消息的结构,以便其他接收它的进程可以使用它.然而,这个结构包含定义在其他头文件中的参数类型,这些头文件本身包含一堆其他头文件. typedef struct sfp_info_s {国际端口;char platform_id[50];sff_eeprom_t sff_type;char status_str[50];sff_dom_t sff_dom;}sfp_info_t ..
发布时间:2021-11-15 00:57:21 其他开发

错误 C1010:查找预编译头时文件意外结束.您是否忘记添加“#include "stdafx.h"'你的消息来源?

我有一个项目,最初是在 Microsoft Visual C++ 上开发的.NET 版本 7.0.9466,它运行良好.我尝试使用 MS 2013 运行我的项目,当我尝试构建项目时,出现此错误消息: 错误 C1010:查找预编译头时文件意外结束.您是否忘记将“#include“stdafx.h""添加到您的源代码中? 我已经做过的一些动作: 我在PropertyPages-> C ..
发布时间:2021-09-18 20:02:29 其他开发

减轻头文件中的长限制

我在头文件中定义了一个 inline 函数对象,如下所示: //fmap.hpp命名空间 util {内联自动 constexpr fmap = boost::hana::curry(boost::hana::flip(boost::hana::transform));} 客户端代码可以简单地#include "fmap.hpp" 并开始使用 util::fmap. 到目前为止一切顺利. ..
发布时间:2021-09-15 19:37:43 其他开发

模板,只在头文件中编码?

最近我了解到,如果我想使用模板,我应该只在头文件中实现代码.我知道有解决方案可以在 .h 和 .cpp 文件中做到这一点,但只是假设我不想要要做到这一点,我应该在 .h 文件中编写所有代码吗?即使程序可能很大,这是一种编写代码的好方法吗?另外,只有 .h 文件(不包括 main 函数)并且从不使用 .cpp 文件看起来很奇怪. 解决方案 将声明和接口文档与实现分开,就像您通常对 heade ..
发布时间:2021-09-04 20:45:58 其他开发

名称后跟“::"必须是类或命名空间错误,即使“::"跟在类名之后

我正在尝试用 C++ 实现优先级队列.我创建了一个名为“priority_queue.h"的头文件,其中包含我的类的定义,以及一个定义泛型类型的模板.我还有一个文件,我在一个名为“priority_queue.cpp"的文件中实现类定义中定义的方法,其中包含“priority_queue.h".我的文本编辑器和编译器都在抛出错误,尽管它们似乎不同. 我在 StackOverflow 和其他网 ..
发布时间:2021-06-02 22:11:58 其他开发

C ++:在头文件中声明结构返回类型函数

我有一个头文件" check.h ",它定义了以下 struct : #ifndef CHECK_H#定义CHECK_H#include结构测试{std :: string检查;};#万一 我还有另一个头文件" test.h ",该文件具有以下功能,返回类型为上面定义的 struct Test : #ifndef TEST_H#定义TEST_H#include ..
发布时间:2021-05-13 20:56:04 其他开发

头文件中声明的变量是否将变量的单独副本提供给每个包含的.c文件?

假设有两个源文件, file_1.c 和 file_2.c ,它们包含相同的头文件file.h.file.h具有变量 int 变量.一旦 file_1.c 和 file_2.c 包含file.h, file_1.c 和 file_2.c 是否具有变量变量的单独副本,还是它们共享相同的副本? 解决方案 让我们从完全由C标准定义的案例开始.如果 file.h 包含 extern int x; ..
发布时间:2021-05-13 20:56:01 其他开发

避免在C ++中重复的子类定义

我是C ++类的新手,我对定义具有相同定义的抽象类型/接口的多个子类有疑问. 以下面的示例为例,该示例可能会出现在具有3个子类的头文件中: class Animal {私人的:诠释int b;上市:明确的Animal(int a){}虚拟动物* getFriend()= 0;虚拟bool walk()= 0;虚拟布尔talk()= 0;虚拟布尔someFunction()= 0;虚拟布尔 ..
发布时间:2021-05-13 20:55:58 其他开发