前言:这篇文章将带您了解C++基础中的知识点——命名空间、引用、内联、缺省、重载
😘我的主页:OMGmyhair-优快云博客
目录
一、命名空间namespace
1.可以嵌套定义,但是只能定义在全局
namespace ly
{
int student = 1;
int age = 21;
void Print(void)
{
printf("ly::Print");
}
namespace sister
{
int num = 2;
void Print(void)
{
printf("sister::Print");
}
}
}
2.多文件中定义的同名namespace会被认为是同一个
3.C++标准库都是放在一个叫做std(standard)的命名空间。例如endl、cin、cout都是里面的。
使用方式
当我们想使用命名空间中的变量或者函数的时候,有三种方式:
1.指定命名空间进行使用
在下面代码中,当我们想访问age时,就可以在前面加上ly::进行指定命名空间
namespace ly
{
int student = 1;
int age = 21;
void Print(void)
{
printf("ly::Print");
}
}
}
int main()
{
printf("ly的年龄:%d\n", ly::age);
return 0;
}
2.将某一成员进行展开
namespace ly
{
int student = 1;
int age = 21;
void Print(void)
{
printf("ly::Print");
}
}
using ly::age;
int main()
{
//1.
/*printf("ly的年龄:%d\n", ly::age);*/
//2.
printf("ly的年龄:%d\n", age);
printf("ly学生数量:%d\n", ly::student);
return 0;
}
3.将该命名空间全部展开
namespace ly
{
int student = 1;
int age = 21;
void Print(void)
{
printf("ly::Print");
}
}
//using ly::age;
using namespace ly;
int main()
{
//1.
/*printf("ly的年龄:%d\n", ly::age);*/
//2.
/*printf("ly的年龄:%d\n", age);
printf("ly学生数量:%d\n", ly::student);*/
//3
printf("ly的年龄:%d\n", age);
printf("ly学生数量:%d\n",student);
return 0;
}