Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 当我复制了#include in.cpp文件时会发生什么_C++_Build_C Preprocessor - Fatal编程技术网

C++ 当我复制了#include in.cpp文件时会发生什么

C++ 当我复制了#include in.cpp文件时会发生什么,c++,build,c-preprocessor,C++,Build,C Preprocessor,我在一家小公司工作,但我们有可能复制.CPP文件中包含的服务。重复的.h文件会影响我们的编译时间吗?重复的.h文件会导致重新定义错误。或使用: #pragma once 或任何其他。重复的.h文件可能导致重新定义错误。或使用: #pragma once 或任何其他。重复的.h文件可能导致重新定义错误。或使用: #pragma once 或任何其他。重复的.h文件可能导致重新定义错误。或使用: #pragma once 或任何其他。include语句实际上会被包含文件的全文替换,从而生成一

我在一家小公司工作,但我们有可能复制.CPP文件中包含的服务。重复的.h文件会影响我们的编译时间吗?

重复的
.h
文件会导致重新定义错误。或使用:

#pragma once

或任何其他。

重复的
.h
文件可能导致重新定义错误。或使用:

#pragma once

或任何其他。

重复的
.h
文件可能导致重新定义错误。或使用:

#pragma once

或任何其他。

重复的
.h
文件可能导致重新定义错误。或使用:

#pragma once
或任何其他。

include语句实际上会被包含文件的全文替换,从而生成一个包含所有标题和原始文件内容的大型文件。通常,将所有这些内容粘贴在一起所需的时间可以忽略不计

但是,这意味着代码会在文件中出现两次,除非您有

#pragma once
或者使用

#ifndef MY_HEADER_NAME_H
#define MY_HEADER_NAME_H

// Actual header contents go here.

#endif /* MY_HEADER_NAME_H*/
或者使用其他类似的构造,如Objective C的#import指令,所有这些都可以确保头的内容在包含两次时不会再次编译。否则,根据您的代码,您将收到关于双定义结构等的错误消息

因此,除非您的项目或头文件很大,或者您的编译器编写得非常糟糕,或者您的硬盘速度非常慢,否则在编译时间方面,将同一个文件包含两次是可以忽略的。

include语句实际上会被包含的文件的全文替换,生成一个包含所有标题和原始文件内容的大型文件。通常,将所有这些内容粘贴在一起所需的时间可以忽略不计

但是,这意味着代码会在文件中出现两次,除非您有

#pragma once
或者使用

#ifndef MY_HEADER_NAME_H
#define MY_HEADER_NAME_H

// Actual header contents go here.

#endif /* MY_HEADER_NAME_H*/
或者使用其他类似的构造,如Objective C的#import指令,所有这些都可以确保头的内容在包含两次时不会再次编译。否则,根据您的代码,您将收到关于双定义结构等的错误消息

因此,除非您的项目或头文件很大,或者您的编译器编写得非常糟糕,或者您的硬盘速度非常慢,否则在编译时间方面,将同一个文件包含两次是可以忽略的。

include语句实际上会被包含的文件的全文替换,生成一个包含所有标题和原始文件内容的大型文件。通常,将所有这些内容粘贴在一起所需的时间可以忽略不计

但是,这意味着代码会在文件中出现两次,除非您有

#pragma once
或者使用

#ifndef MY_HEADER_NAME_H
#define MY_HEADER_NAME_H

// Actual header contents go here.

#endif /* MY_HEADER_NAME_H*/
或者使用其他类似的构造,如Objective C的#import指令,所有这些都可以确保头的内容在包含两次时不会再次编译。否则,根据您的代码,您将收到关于双定义结构等的错误消息

因此,除非您的项目或头文件很大,或者您的编译器编写得非常糟糕,或者您的硬盘速度非常慢,否则在编译时间方面,将同一个文件包含两次是可以忽略的。

include语句实际上会被包含的文件的全文替换,生成一个包含所有标题和原始文件内容的大型文件。通常,将所有这些内容粘贴在一起所需的时间可以忽略不计

但是,这意味着代码会在文件中出现两次,除非您有

#pragma once
或者使用

#ifndef MY_HEADER_NAME_H
#define MY_HEADER_NAME_H

// Actual header contents go here.

#endif /* MY_HEADER_NAME_H*/
或者使用其他类似的构造,如Objective C的#import指令,所有这些都可以确保头的内容在包含两次时不会再次编译。否则,根据您的代码,您将收到关于双定义结构等的错误消息


所以,除非你的项目或头文件很大,或者你的编译器写得非常糟糕,或者你的硬盘速度非常慢,在编译时间方面,包含同一个文件两次可以忽略不计。

通常不会以任何明显的方式影响编译时间。通常不会以任何明显的方式影响编译时间。通常不会以任何明显的方式影响编译时间。通常不会以任何明显的方式影响编译时间。