include<bits/stdc++.h>包含了目前c++所包含的所有头文件
对比:
include
include
include
include
include
include
include
include
include
include
include
include
include using namespace std;
int main(){
return 0;
1
}
可以直接转化为:
include<bits/stdc++.h>
using namespace std;
int main()
return 0;
1
}
兼容性问题:
注意,目前POJ还不支持<bits/stdc++.h>(G++、C++都不支持)。HDU部分支持(G++支持,C++不支持)。
其他国外的oj,还有台湾的oj都支持,CF,Topcoder也都支持。
当然,其实这是一个偷懒的写法,但是会降低编译速度(为何会降低编译速度,我还不能知道,等到之后学编译原理再来填坑吧)。
笔试平台可以使用,方便,VS中并不支持,一般G++ 4.4以上就支持这个头文件了。当然,私下自己学习就不要去使用了,对你的自主学习一点都没有好处。
c++11支持这个
po上<bits/stdc++.h>的源代码
// C++ includes used for precompiling -- C++ --
// Copyright © 2003-2014 Free Software Foundation, Inc. This file is part of the GNU ISO C++ Library. This library is free// software; you can redistribute it and/or modify it under the// terms of the GNU General Public License as published by the// Free Software Foundation; either version 3, or (at your option)// any later version.
// This library is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the// GNU General Public License for more details.
// Under Section 7 of GPL version 3, you are granted additional// permissions described in the GCC Runtime Library Exception, version// 3.1, as published by the Free Software Foundation.
// You should have received a copy of the GNU General Public License and// a copy of the GCC Runtime Library Exception along with this program;// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see// http://www.gnu.org/licenses/.
/** @file stdc++.h
This is an implementation file for a precompiled header.
*/
// 17.4.1.2 Headers
// C#ifndef _GLIBCXX_NO_ASSERT
include #endif
include
include
include
include
include
include
include
include
include
include
include
include
include
include
include
if __cplusplus >= 201103L
include
include
include
include
include
include
include
include
include #endif
// C++