c语言关键词using namespace意思
5个回答
推荐于2016-04-10
展开全部
这是C++才会有的语言特性.
假如你使用一个程序库,他里面有桓霰淞拷衋bc,但是你自己也不小心定义了一个叫abc的变量,这样就会引起重定义错误.所以为了避免这种现象,C++引入了名字空间(namespace)的概念,编写程序库的时候最好把所有东西放在一个namespace中,例如
namespace MY
{
int abc;
char cab;
}
这样,你在外界就要通过MY::abc来访问MY里面的abc,而如果你自己在外面定义了一个叫abc的变量,不会引起重定义的错误.直接调用abc会调用你自己定义的abc,而只有用MY:abc才会真正调用出MY里面的abc
但是这样未免太麻烦,如果你确保你不会重复使用别人程序库里的名字,你就可以把他的名字空间里所有名字全部调出,这个过程就是using namespace,例如我输入
using namespace MY;
这样,下面我再调用abc时,就会自动调用MY里面的abc了.
假如你使用一个程序库,他里面有桓霰淞拷衋bc,但是你自己也不小心定义了一个叫abc的变量,这样就会引起重定义错误.所以为了避免这种现象,C++引入了名字空间(namespace)的概念,编写程序库的时候最好把所有东西放在一个namespace中,例如
namespace MY
{
int abc;
char cab;
}
这样,你在外界就要通过MY::abc来访问MY里面的abc,而如果你自己在外面定义了一个叫abc的变量,不会引起重定义的错误.直接调用abc会调用你自己定义的abc,而只有用MY:abc才会真正调用出MY里面的abc
但是这样未免太麻烦,如果你确保你不会重复使用别人程序库里的名字,你就可以把他的名字空间里所有名字全部调出,这个过程就是using namespace,例如我输入
using namespace MY;
这样,下面我再调用abc时,就会自动调用MY里面的abc了.
展开全部
C中没有这个,在C++中才出现的
C++为了避免名字冲突,用名字空间(namespace)来解决:
using namespace用来确定编译时缺省查找的名字空间。
例如,使用了STL的头文件,后面可以添加using namespace std;。这样就可以直接写类型名字了。如cout << endl;
否则每次用到STL类型的时候都要添加std::。如std::cout << std::endl;
如果编译器发现某个名字在多个缺省的名字空间都出现过,会显示编译错误,这时就必须使用::操作符强行指定名字空间了。
例如你自己定义了一个变量,名字也叫cout。这时你就必须指定是std::cout还是::cout(直接使用::表示根名字空间)。
C++为了避免名字冲突,用名字空间(namespace)来解决:
using namespace用来确定编译时缺省查找的名字空间。
例如,使用了STL的头文件,后面可以添加using namespace std;。这样就可以直接写类型名字了。如cout << endl;
否则每次用到STL类型的时候都要添加std::。如std::cout << std::endl;
如果编译器发现某个名字在多个缺省的名字空间都出现过,会显示编译错误,这时就必须使用::操作符强行指定名字空间了。
例如你自己定义了一个变量,名字也叫cout。这时你就必须指定是std::cout还是::cout(直接使用::表示根名字空间)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
en en enha ohao好好
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有听说过
应该是程序员自定义的吧
应该是程序员自定义的吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询