当前位置: 代码迷 >> 综合 >> 《C/C++学习指南》语法篇—笔记 (二十二、内部类与名字空间)
  详细解决方案

《C/C++学习指南》语法篇—笔记 (二十二、内部类与名字空间)

热度:77   发布时间:2024-02-08 15:47:57.0

《C/C++学习指南》语法篇—笔记 (二十二、内部类与名字空间)

        • 内部类
        • 名字空间

内部类

把一个类定义写在另一个类的内部

Class AAA
{
public://定义一个内部类class Inner{public:char name[64];};
};

在使用内部类时,类名要使用全称 AAA::Inner

AAA::Inner a;

特别:
内部类和外部类互相没有特权,不是朋友关系,不是父子关系,没有任何特殊关系。外部类无法自由访问内部类,内部类也同样无法自由访问外部类。

名字空间

解决名字冲突的终极手段:namespace。语法:

namespace XXX
{//把类和函数写在这个大括号里class YYY{};
}  //<-不需封号XXX::YYY obj;

解除前缀:

using namespace XXX;  //使用XXX里面的所有名字
using namespace XXX::YYY; //只使用XXX里面的一个名字YYY

*.h 和 *.cpp的分离

namespace XXX
{
//声明
}namespace XXX
{
//定义void YYY::Test(){}
}