gpt4 book ai didi

c++ - 为什么 "using namespace std;"被认为是不好的做法?

转载 作者:太空宇宙 更新时间:2023-11-03 23:08:26 24 4
gpt4 key购买 nike

我听说 using namespace std; 是不好的做法,我应该直接使用 std::coutstd::cin反而。为什么是这样?是否存在声明与 std 命名空间中的某些内容同名的变量的风险?

最佳答案

考虑两个名为 Foo 和 Bar 的库:

using namespace foo;
using namespace bar;

一切正常,您可以毫无问题地从 Foo 调用 Blah() 并从 Bar 调用 Quux()。但是有一天,您升级到 Foo 2.0 的新版本,它现在提供了一个名为 Quux() 的函数。现在您遇到了冲突:Foo 2.0 和 Bar 都将 Quux() 导入到您的全局 namespace 中。这将需要一些努力来修复,尤其是当函数参数恰好匹配时。

如果你用过foo::Blah()bar::Quux(),那么引入foo::Quux() 本来就是一个非事件。

关于c++ - 为什么 "using namespace std;"被认为是不好的做法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54465972/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com