news 2026/4/27 10:29:22

详解C++中的万能头文件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
详解C++中的万能头文件

一、什么是万能头文件?

C++的万能头文件是:

1

#include <bits/stdc++.h>

它是一个包含了每一个标准库的头文件。

优点:

  • 在算法竞赛中节约时间;
  • 减少了编写所有必要头文件的工作量。

缺点:

  • 不是GNU C++库的标准头文件,在部分情况下会编译失败;
  • 包含了很多不必要的东西,会大大增加编译时间。

二、源码

⚠️ 这里去除了多余的注释,并删除了cstdalign

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

// C

#ifndef _GLIBCXX_NO_ASSERT

#include <cassert>

#endif

#include <cctype>

#include <cerrno>

#include <cfloat>

#include <ciso646>

#include <climits>

#include <clocale>

#include <cmath>

#include <csetjmp>

#include <csignal>

#include <cstdarg>

#include <cstddef>

#include <cstdio>

#include <cstdlib>

#include <cstring>

#include <ctime>

#if __cplusplus >= 201103L

#include <ccomplex>

#include <cfenv>

#include <cinttypes>

#include <cstdbool>

#include <cstdint>

#include <ctgmath>

#include <cwchar>

#include <cwctype>

#endif

// C++

#include <algorithm>

#include <bitset>

#include <complex>

#include <deque>

#include <exception>

#include <fstream>

#include <functional>

#include <iomanip>

#include <ios>

#include <iosfwd>

#include <iostream>

#include <istream>

#include <iterator>

#include <limits>

#include <list>

#include <locale>

#include <map>

#include <memory>

#include <new>

#include <numeric>

#include <ostream>

#include <queue>

#include <set>

#include <sstream>

#include <stack>

#include <stdexcept>

#include <streambuf>

#include <string>

#include <typeinfo>

#include <utility>

#include <valarray>

#include <vector>

#if __cplusplus >= 201103L

#include <array>

#include <atomic>

#include <chrono>

#include <condition_variable>

#include <forward_list>

#include <future>

#include <initializer_list>

#include <mutex>

#include <random>

#include <ratio>

#include <regex>

#include <scoped_allocator>

#include <system_error>

#include <thread>

#include <tuple>

#include <typeindex>

#include <type_traits>

#include <unordered_map>

#include <unordered_set>

#endif

三、编译器找不到 bits/stdc++.h

最简单粗暴的做法就是,首先找到<iostream>这个头文件所在的目录,进入该目录,创建名为bits的文件夹,再进入该文件夹,创建一个名为stdc++.h的文件,把上述源码复制进去即可。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/27 10:27:16

AWS无服务器网站搭建终极指南:S3+CloudFront静态托管教程

AWS无服务器网站搭建终极指南&#xff1a;S3CloudFront静态托管教程 【免费下载链接】og-aws &#x1f4d9; Amazon Web Services — a practical guide 项目地址: https://gitcode.com/gh_mirrors/og/og-aws 在当今云计算时代&#xff0c;AWS&#xff08;Amazon Web Se…

作者头像 李华
网站建设 2026/4/27 10:26:38

如何使用HTTPie CLI与Traefik:云原生路由器的终极API测试指南

如何使用HTTPie CLI与Traefik&#xff1a;云原生路由器的终极API测试指南 【免费下载链接】cli &#x1f967; HTTPie CLI — modern, user-friendly command-line HTTP client for the API era. JSON support, colors, sessions, downloads, plugins & more. 项目地址: …

作者头像 李华
网站建设 2026/4/27 10:23:48

终极指南:如何使用jq流式处理大型JSON文件的内存优化技巧

终极指南&#xff1a;如何使用jq流式处理大型JSON文件的内存优化技巧 【免费下载链接】jq Command-line JSON processor 项目地址: https://gitcode.com/GitHub_Trending/jq/jq 在数据处理领域&#xff0c;面对GB级别的大型JSON文件时&#xff0c;传统工具往往因内存不足…

作者头像 李华
网站建设 2026/4/27 10:22:56

Go语言的runtime.GC触发条件与堆内存增长策略在应用程序中的调优

Go语言作为一门以高并发和高效内存管理著称的编程语言&#xff0c;其垃圾回收&#xff08;GC&#xff09;机制一直是开发者关注的焦点。runtime.GC的触发条件与堆内存增长策略直接影响应用程序的性能表现&#xff0c;尤其是在高负载场景下&#xff0c;合理的调优可以显著减少GC…

作者头像 李华