📄 demo_namespace_3_b.cpp
字号:
//*********************************************************************
// 命名空间: 使用using省略命名空间名的限定
// 注意:同一作用域中用using声明的不同命名空间的成员中不能有同名的成员
//*********************************************************************
# include <iostream>
using namespace std;
# include "Demo_Namespace_Head1_New.HPP"
# include "Demo_Namespace_Head2_New.HPP"
//使用命名空间别名,但注意只能逐行定义.
//namespace NS1=NameSpace1,NS2=NameSpace2; //Error
namespace NS1=NameSpace1;
namespace NS2=NameSpace2;
int main()
{
//stud1和stud2的作用域是main函数作用域
//虽然是由不同命名空间域的类分别定义,但不能重名,否则是重定义
//命名空间成员用"命名空间名::命名空间成员"调用
//使用using省略命名空间名的限定
using NS1::Student;
using NS1::fun;
Student stud1(101,"Wang",18);
stud1.get_data();
cout<<fun(10,6)<<endl;
//注意:同一作用域中用using声明的不同命名空间的成员中不能有同名的成员
using NS2::Student; //Error
using NS2::fun; //Error
Student stud2(102,"Li",'f'); //二义性错误,无法判断属于那个命名空间.
stud2.get_data();
cout<<fun(10,6)<<endl; //二义性错误,无法判断属于那个命名空间.
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -