c++万能头文件
最近在牛客网刷题经常会看到讨论区大神们的用了一个非常陌生的头文件
#include<bits/stdc++.h>
这个头文件包含了现在我们使用的大多数头文件,由于好奇,我就跟着动手查了一下
没想到发现了一个宝藏头文件
但是VS下并不自带这个头文件,如果使用的话需要进行手动添加到include文件夹中
1. VS下安装过程
- 找到资源管理器
- 在解决方案上点击右键进入属性
- 复制有关于include文件夹的路径
例如我的vs下的这个文件路径是:D:\vs2013\VC\atlmfc\include
进入这个文件夹后,手动添加一个bits的文件夹,然后添加bits/stdc++.h头文件,可以自己用vs写一个,也可以在网上下
然后重启VS就可以了
该文件下所包含的头文件
// 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 <cstdalign>
#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
这个包含了大多数的头文件,有一写例如cpp#include <windows.h>
并不存在,但是这个大大减少了我们的代码量
不过这个头文件也并不是适用于所有的oj
在国内oj中,poj,hdu 不支持这个函数,这几个oj的编译器问题,其他国外的oj,还有台湾的oj都支持,CF,Topcoder也都支持。
对于牛客网,leetcode等oj网站还是比较适用的。