程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++嵌套類與部分類具體解析

C++嵌套類與部分類具體解析

編輯:關於C++

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;
}

運轉成果:

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved