什么'使用std::cout和使用::std::cout之间的区别是什么

What's the difference between using std::cout and using ::std::cout?

本文关键字:std cout 之间 区别 是什么 使用 什么      更新时间:2023-10-16

我们已经知道::是全局命名空间。我们已经知道使用名称空间有一些缺点。

因此,我们决定在文件using ::std::cout;的开头键入较少的类型,但我们也可以键入using std::cout;。那么有什么不同吗?

有些人编写::std::cout是为了绝对确保他们从标准库中获得cout,因为前导的::将类型植根于全局命名空间。

否则,可以想象查找可以找到某个::haha::trolling::std::cout名称。然而,我认为这不太可能。

我有时确实会用简短的函数模板编写::std,这些模板被设计成高度可重用的,只是为了最大限度地提高可移植性,但这并不常见。我见过一个如此虔诚的贡献者,但仅此而已。