案例1:
#include <iostream>
int main()
{
std::cout<<"Hello World"<<endl;
return 0;
}
编译器发出错误,因为endl
需要名称空间std
,如std::endl
。
案例2:
#include <iostream>
int main()
{
endl(std::cout);
return 0;
}
但是,在没有命名空间std
的第二种情况下,endl
正常工作。 Demo
为什么endl
在没有命名空间std
的情况下正常工作?