类似于命名空间,一个类也是一个类命名空间。因此类嵌套的作用是帮助实现外层类,并且避免命名冲突。
对于命名空间(不再赘述可以参考《c++ prime plus》),其中定义的变量和函数的作用于在不加引用的情况下,是命名空间内,并且符合一般的访问控制。嵌套类也一样:
外层类可以用嵌套类定义对象,也可以定义他的指针。外层类使用内层类是符合一般类的访问权限控制,public:中的可以在外层访问等等。只有当嵌套被声明为public时,才可以在外层类的外部使用它,而且必须使用作用域限制符,比如:
#include <iostream>
class A{
class B{
};
};
int main(){
A::B b;//必须用::
getchar();
return 0;
}
相关文章
- 11-22126、C++中类成员的访问权限和继承权限问题
- 11-22一.OC基础之:1,OC语言的前世今生 ,2,OC语言入门,3,OC语言与C的差异,4,面向对象,5,类和对象的抽象关系,6,类的代码创建,7,类的成员组成及访问
- 11-22C++类的嵌套(2)-访问权限和调用关系
- 11-22C++语言笔记系列之十五——派生类、基类、子对象的构造和析构函数调用关系
- 11-22C++ 1 (只在源文件)//点和圆的关系 //设计一个圆形类 和一个点类 计算点和圆的关系 //点到圆心的距离 == 半径 点在圆上 //点到圆心的距离 > 半径 点在圆外 //点到圆心的距离 < 半径 点在圆内 //点到圆心的距离 获取 ....... (x1 -x2)^2 + (y1-y2)^2 开根号 和半径对比 // 计算 可以 两边同时 平方
- 11-22C++ 2(将类分文件) //点和圆的关系 //设计一个圆形类 和一个点类 计算点和圆的关系 //点到圆心的距离 == 半径 点在圆上 //点到圆心的距离 > 半径 点在圆外 //点到圆心的距离 < 半径 点在圆内 //点到圆心的距离 获取 ....... (x1 -x2)^2 + (y1-y2)^2 开根号 和半径对比 // 计算 可以 两边同时 平方