有关C++编程 “using namespace std”和“std::”
在学校老师和课本用的都是“usingnamespacestd”,但是从来没有看到过std::网上很多人写的code里面都有出现带有std::的语句。两者有什么关系么?没学...
在学校老师和课本用的都是“using namespace std”,但是从来没有看到过std::
网上很多人写的code里面都有出现带有 std::的语句。
两者有什么关系么?
没学过后者会对编程有什么影响么?
本人没学的很深,百度百科上的看的不是很明白,请用浅显一点的方式解答 展开
网上很多人写的code里面都有出现带有 std::的语句。
两者有什么关系么?
没学过后者会对编程有什么影响么?
本人没学的很深,百度百科上的看的不是很明白,请用浅显一点的方式解答 展开
1个回答
展开全部
举个例子给你 using namespace 是指用命名空间的意思
using namespace std;
表示用std的命名空间
你若是在程序里面用了这个语句 那你用c++的输出的时候
可以直接用cout<<"aaaa"<<endl;
但是你没用用这句话的话
你需要用 std::cout<<"aaa"<<std::endl;
这样才行 不然你直接用cout的话就会报错
个人建议不要直接用using namespace xxx
这样会造成命名空间很混乱
我都是直接需要的时候就加进去用 如 std::cout....
using namespace std;
表示用std的命名空间
你若是在程序里面用了这个语句 那你用c++的输出的时候
可以直接用cout<<"aaaa"<<endl;
但是你没用用这句话的话
你需要用 std::cout<<"aaa"<<std::endl;
这样才行 不然你直接用cout的话就会报错
个人建议不要直接用using namespace xxx
这样会造成命名空间很混乱
我都是直接需要的时候就加进去用 如 std::cout....
追问
为什么会造成混乱呢,可不可以再举几个例子?我百科了一下“命名空间”,上面说用using name std反而可以减少麻烦。
追答
这么说吧 可能是个人喜好
比如我不加 using namespace std;
using namespace xyz;
那么我在下面的代码里面
当用到 std::cout的时候 我就知道用了命名空间 std
当用到 xyz::func的时候 我就知道用到了命名空间xyz里面的func
我觉得这样更可以让我清楚明白
纯粹个人喜好吧
网上说的也可以算对 你在一开始就用了
那之后就不用那么麻烦的每个语句都加xyz:: 和 std:: 可能也会方便点
但是当两个命名空间有同一个函数的时候 比如 xyz::func 和 abc::func
如果你一开始就声明了命名空间 你觉得会发生什么呢?
自己想想?
是我的话 我会直接用xyz::func 而不是用func 这样就是我说的可以更加清楚明白
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询