C++namespace 命令空间

玩c++的人都知道,"using namespace std;"这里面就有一个“namespace”,这句代码的含义是“打开std这个命令空间”,当然。也可以不加这一句,在接下来的存在于std命令空间里的函数和变量开头都得加个“std::”如下:

#include <iostream>
int main()
{
  std::cout<<"hellow world!";

}

而在开头加上"using namespace std;"后,如下:

#include <iostream>
using namespace std;
int main()
{
  cout<<"hellow world!";

}

这样,你就可以发现,在两次对比中,有"using namespace std;"的在main函数中少打了std::,第二个没有"using namespace std;"的,就多打了std::,所以可以断定,“using namespace”就像#include一样,只不过是用于打开一个库里面的一个命令空间,简单来说,就是个大房子,大房子就是一个库,一个个小函数就是大房子里的小隔间,而有些大房子把一些小房子分到一个种类,按种类划分它,这样,单独找它就会变得简单多了。c++中的namespace也是如此,我创建了一个名为space的命令空间,如下:

namespace space
{

}

//提示:namespace是个关键字,可不是XXX库里的。

OK,回归正题,命令空间的里面也可以创建函数,现在,我要在命令空间spaced的里面创建一个名为MAIN的变量,如下:

namespace space
{
int MAIN;
}

好,既然我已经在"space"命令空间里创建了“MAIN”变量,那么我要打开它,使用在它里面的MAIN,怎么办?没关系,我有两种方法:

1,老老实实补全变量地址

namespace space
{
int MAIN;
}
int main()
{
space::MAIN+=11;//这里给他加11
}

2,开局开命令空间

namespace space{
int MAIN;
}
using namespace space;//后面的“space是要打开的命令空间名
int main()
{
MAIN+=11;//因为开局已经打开,所以现在可以使用;
}

不过命令空间必须是全局性的,把它放到任意一个函数内它都会报错。

//小贴士:可以在命令空间内创建命令空间,玩套娃,如下:

namespace space
{
namespace a
{
int y;
}
}

ok,本文章先到这里,下期不见不散!

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值