【发布时间】:2019-10-06 19:17:30
【问题描述】:
我注意到包含 std::greater<T>() 的 C++ 代码在不包含 <functional> 的情况下编译良好。这让我开始思考。原来这段代码可以编译:
#include <iostream>
int main(){
std::greater<T>();
}
但是这个没有:
int main(){ //<iostream> doesn´t get included
std::greater<T>();
}
由此我可以推断出<iostream> 包含std::greater,这对我来说似乎有些奇怪。谁能解释一下,为什么std::greater<T>() 会包含在<iostream> 中?
如果这很重要,我正在使用带有 C++14 的 g++(x86_64-posix-seh-rev0,由 MinGW-W64 项目构建)8.1.0。
【问题讨论】:
标签: c++