C++嵌套類與部分類具體解析。本站提示廣大學習愛好者:(C++嵌套類與部分類具體解析)文章只能為提供參考,不一定能成為您想要的結果。以下是C++嵌套類與部分類具體解析正文
1. 嵌套類
核心類須要應用嵌套類對象作為底層完成,而且該嵌套類只用於核心類的完成,且同時可以對用戶隱蔽該底層完成。
從感化域的角度看,嵌套類被隱蔽在核心類當中,該類名只能在核心類中應用。假如在核心類以外的感化域應用該類名時,須要加名字限制。
嵌套類中的成員函數可以在它的類體外界說。
嵌套類的成員函數對核心類的公有成員沒有拜訪權,反之亦然。
嵌套類僅僅只是語法上的嵌入。
2. 部分類
類也能夠界說在函數體內,如許的類被稱為部分類(loacl class)。部分類只在界說它的部分域內可見。
部分類的成員函數必需被界說在類體中。
部分類中不克不及有靜態成員函數。
在理論中,部分類很少應用。
上面給出一段代碼來講明:
#include<iostream>
using namespace std;
class Outer
{
public:
class Inner
{
public:
void Fun();
};
public:
Inner obj_;
void Fun()
{
cout<<"Outer::Fun...."<<endl;
obj_.Fun();
}
};
void Outer::Inner::Fun()
{
cout<<"Inner::Fun..."<<endl;
}
void Fun()
{
class LocalClass
{
public:
int num_;
void Init(int num)
{
num_=num;
}
void Display()
{
cout<<"num_"<<num_<<endl;
}
};
LocalClass lc;
lc.Init(10);
lc.Display();
}
int main()
{
Outer o;
o.Fun();
Outer::Inner i;
i.Fun();
Fun();
return 0;
}