C++ 命名空间,作用域运算符和using关键字

本文介绍了C++中的命名空间、作用域运算符和using关键字。作用域运算符用于区分不同模块中相同标识符,命名空间提供避免二义性的机制,using关键字则用于简化命名空间的引用。文章详细讲解了命名空间的定义、生命周期以及using声明的作用域规则,并提及了子类私有继承父类的公有函数和用using定义类型别名的方法。
摘要由CSDN通过智能技术生成

C++ 命名空间,作用域运算符和using关键字

个人理解,极其主观,仅供参考!

C++ 作用域运算符

C++的作用域运算符主要起到区别作用,避免产生二义性,在不同的模块可能有相同的标识符名称,需要用::加以区分。

主要用于:

  1. 命名空间
  2. 全局变量
  3. 类(static情况,继承情况)

见文章:C++作用域运算符::的用法 (360doc.com)

C++ 命名空间

使用命名空间实际上也是避免不同的空间内的标识符相同导致二义性,可以通过使用作用域运算符确定此标识符处于什么空间,也可以使用using namesapce s_name 声明以下的语句都处于s_name的作用域中。

作用域可以嵌套,可以在一个作用域里定义另一个作用域。

注意namespace内的变量是静态生命周期。

namespace Hs
{
   
	int i = 10;
	int j = 25;
	namespace HD
	{
   
		int k = 13;
	}
}
void testNS()
{
   
	using namespace Hs;
	cout << &HD::k << endl;
}

输出:

00A81050

定义了命名空间,实际上就分配内存了。

注意只能在全局作用域定义命名空间。

C++ using

using 是C++的一个关键字,主要用在以下地方:

命名空间

可以通过 using namesapce s_name 表明作用域内的代码中的标识符在s_name命名空间。

那么作用域怎么定呢?

namespace HU
{
   
	int i = 5;
	int j = 15;
}
namespace Hs
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值