青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

C++ Programmer's Cookbook

{C++ 基礎(chǔ)} {C++ 高級(jí)} {C#界面,C++核心算法} {設(shè)計(jì)模式} {C#基礎(chǔ)}

C++局部類(lèi)和嵌套類(lèi)的區(qū)別

 局部類(lèi)

  在一個(gè)函數(shù)體內(nèi)定義的類(lèi)稱(chēng)為局部類(lèi)。局部類(lèi)中只能使用它的外圍作用域中的對(duì)象和函數(shù)進(jìn)行聯(lián)系,因?yàn)橥鈬饔糜蛑械淖兞颗c該局部類(lèi)的對(duì)象無(wú)關(guān)。局部類(lèi)不能被外部所繼承。在定義局部類(lèi)時(shí)需要注意:局部類(lèi)中不能說(shuō)明靜態(tài)成員函數(shù),并且所有成員函數(shù)都必須定義在類(lèi)體內(nèi)。在實(shí)踐中,局部類(lèi)是很少使用的。下面是一個(gè)局部類(lèi)的例子。
  int a;
  
void fun()
  
{
  
static int s;
  
class A
  
{
    
public:
    
void init(int i) { s = i; }
  }
;
  A m;
  m.init(
10);
  }


局部類(lèi)的另一個(gè)用途是用來(lái)實(shí)現(xiàn)類(lèi)型轉(zhuǎn)化,如下代碼:

class Interface
{
public:
   
virtual void Fun() = 0;  
}
;

template 
<class T, class P>
Interface
* MakeAdapter(const T& obj, const P& arg)
{
    
int x;
   
class Local : public Interface
   
{
   
public:
      Local(
const T& obj, const P& arg)
         : obj_(obj), arg_(arg) 
{}
      
virtual void Fun()
      
{
          x 
= 100;
         obj_.Call(arg_);
      }

   
private:
      T obj_;
      P arg_;
   }
;
   
return new Local(obj, arg);
}


  嵌套類(lèi)


  在一個(gè)類(lèi)中定義的類(lèi)稱(chēng)為嵌套類(lèi),定義嵌套類(lèi)的類(lèi)稱(chēng)為外圍類(lèi)。

  定義嵌套類(lèi)的目的在于隱藏類(lèi)名,減少全局的標(biāo)識(shí)符,從而限制用戶(hù)能否使用該類(lèi)建立對(duì)象。這樣可以提高類(lèi)的抽象能力,并且強(qiáng)調(diào)了兩個(gè)類(lèi)(外圍類(lèi)和嵌套類(lèi))之間的主從關(guān)系。下面是一個(gè)嵌套類(lèi)的例子:

 class A
  
{
   
public:
    
class B
    
{
    
public:
      …
    
private:
      …
    }
;
    
void f();
    
private:
    
int a;
  }




   其中,類(lèi)B是一個(gè)嵌套類(lèi),類(lèi)A是外圍類(lèi),類(lèi)B定義在類(lèi)A的類(lèi)體內(nèi)。

  對(duì)嵌套類(lèi)的若干說(shuō)明:

  1、從作用域的角度看,嵌套類(lèi)被隱藏在外圍類(lèi)之中,該類(lèi)名只能在外圍類(lèi)中使用。如果在外圍類(lèi)的作用域內(nèi)使用該類(lèi)名時(shí),需要加名字限定。

  2、從訪問(wèn)權(quán)限的角度來(lái)看,嵌套類(lèi)名與它的外圍類(lèi)的對(duì)象成員名具有相同的訪問(wèn)權(quán)限規(guī)則。不能訪問(wèn)嵌套類(lèi)的對(duì)象中的私有成員函數(shù),也不能對(duì)外圍類(lèi)的私有部分中的嵌套類(lèi)建立對(duì)象。

  3、嵌套類(lèi)中的成員函數(shù)可以在它的類(lèi)體外定義。

  4、嵌套類(lèi)中說(shuō)明的成員不是外圍類(lèi)中對(duì)象的成員,反之亦然。嵌套類(lèi)的成員函數(shù)對(duì)外圍類(lèi)的成員沒(méi)有訪問(wèn)權(quán),反之亦然。國(guó)此,在分析嵌套類(lèi)與外圍類(lèi)的成員訪問(wèn)關(guān)系時(shí),往往把嵌套類(lèi)看作非嵌套類(lèi)來(lái)處理。這樣,上述的嵌套類(lèi)可寫(xiě)成如下格式:

  class A
  {
  public:
    void f();
  private:
    int a;
  };

    class B
  {
    public:
    …
  private:
    …
  };

  由引可見(jiàn),嵌套類(lèi)僅僅是語(yǔ)法上的嵌入。

  5、在嵌套類(lèi)中說(shuō)明的友元對(duì)外圍類(lèi)的成員沒(méi)有訪問(wèn)權(quán)。

  6、如果嵌套類(lèi)比較復(fù)雜,可以只在外圍類(lèi)中對(duì)嵌套類(lèi)進(jìn)行說(shuō)明,關(guān)于嵌套的詳細(xì)的內(nèi)容可在外圍類(lèi)體外的文件域中進(jìn)行定義。


參考:C++編程思想和網(wǎng)絡(luò)文章。

posted on 2007-05-24 17:20 夢(mèng)在天涯 閱讀(10684) 評(píng)論(1)  編輯 收藏 引用 所屬分類(lèi): CPlusPlus

評(píng)論

# re: C++局部類(lèi)和嵌套類(lèi)的區(qū)別 2007-06-10 19:07 黃大仙

收藏  回復(fù)  更多評(píng)論   

公告

EMail:itech001#126.com

導(dǎo)航

統(tǒng)計(jì)

常用鏈接

隨筆分類(lèi)

隨筆檔案

收藏夾

Blogs

c#(csharp)

C++(cpp)

Enlish

Forums(bbs)

My self

Often go

Useful Webs

Xml/Uml/html

搜索

積分與排名

最新評(píng)論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲精品免费网站| 亚洲美女视频网| 久久成人精品一区二区三区| 亚洲精品一区二| 欧美日韩亚洲视频| 亚洲综合视频一区| 欧美一级视频免费在线观看| 国产一区二区精品丝袜| 蜜桃伊人久久| 欧美日韩国产影院| 亚洲欧美经典视频| 久久精品国内一区二区三区| 1000部国产精品成人观看| 亚洲黄色成人网| 国产精品高清在线观看| 久久精品成人一区二区三区| 久久视频一区二区| 亚洲无线视频| 欧美在线视频观看| 一本久久精品一区二区| 亚洲综合欧美日韩| 亚洲黄色精品| 午夜精品久久久久| 亚洲精品黄色| 欧美一级黄色录像| 一本久久a久久精品亚洲| 羞羞漫画18久久大片| 亚洲人成艺术| 午夜精品久久久久久久久久久久久 | 一本色道精品久久一区二区三区 | 亚洲一区二区高清视频| 亚洲高清视频在线| 亚洲一区二区三区免费观看 | 亚洲免费视频在线观看| 麻豆av一区二区三区| 欧美一区二区视频观看视频| 欧美不卡视频| 免费久久久一本精品久久区| 欧美亚洲不卡| 亚洲日本一区二区三区| 亚洲综合视频网| 日韩视频永久免费| 六月婷婷久久| 麻豆精品在线观看| 国产亚洲综合性久久久影院| 一区二区三区产品免费精品久久75| 极品少妇一区二区| 午夜精品福利在线观看| 亚洲一区在线免费| 欧美日韩喷水| 亚洲精品在线一区二区| 亚洲人妖在线| 欧美电影电视剧在线观看| 麻豆国产va免费精品高清在线| 国产精品免费aⅴ片在线观看| 亚洲区在线播放| 亚洲国产成人av| 久久亚洲不卡| 美女视频一区免费观看| 影音先锋亚洲精品| 久久精品道一区二区三区| 久久久亚洲一区| 国精品一区二区三区| 久久99伊人| 免费在线亚洲欧美| 在线日韩av片| 欧美激情按摩在线| 最新国产乱人伦偷精品免费网站| 亚洲欧洲一区二区天堂久久| 欧美成人国产va精品日本一级| 欧美高清免费| 日韩视频―中文字幕| 欧美激情四色| 一区二区三区欧美视频| 欧美在线一区二区| 精品电影在线观看| 欧美成人激情视频| 99re66热这里只有精品3直播| 亚洲视频在线观看免费| 国产精品美女999| 欧美在线视频一区二区| 欧美激情精品久久久久久久变态| 亚洲片国产一区一级在线观看| 欧美成人免费在线观看| 99v久久综合狠狠综合久久| 欧美夜福利tv在线| 伊人男人综合视频网| 欧美精品三区| 欧美一区二区三区四区高清| 欧美成人精品1314www| 一区二区三区www| 国产女同一区二区| 麻豆精品精华液| 在线视频日韩| 免费在线成人av| 亚洲天堂第二页| 激情欧美丁香| 欧美日韩一区二区三区在线观看免 | 亚洲欧美在线播放| 在线日韩精品视频| 国产精品久久久久一区| 欧美一区二区三区视频在线观看| 亚洲国产精品美女| 欧美亚洲三区| 亚洲精品免费一二三区| 国产欧美日韩伦理| 欧美黄污视频| 久久大逼视频| 亚洲视频在线看| 亚洲国产天堂网精品网站| 国产一区二区欧美日韩| 欧美日韩的一区二区| 久久久久亚洲综合| 亚洲午夜在线观看视频在线| 欧美激情一区二区三级高清视频 | 校园激情久久| 日韩视频中午一区| 在线观看欧美一区| 国产亚洲精品福利| 国产精品拍天天在线| 欧美电影免费观看网站| 久久精品国内一区二区三区| 亚洲永久视频| 99在线视频精品| 亚洲高清影视| 亚洲第一视频| 欧美激情亚洲精品| 麻豆精品传媒视频| 久热成人在线视频| 久久久久久久一区二区| 欧美一区二区观看视频| 亚洲嫩草精品久久| 亚洲视频播放| 亚洲一区日韩| 亚洲深夜福利网站| 中文网丁香综合网| 在线亚洲欧美| 亚洲一区二区成人| 在线一区亚洲| 亚洲女性喷水在线观看一区| 一区二区三区日韩在线观看| 日韩一区二区精品视频| 亚洲精品人人| 一区二区不卡在线视频 午夜欧美不卡在 | 模特精品在线| 欧美不卡一卡二卡免费版| 两个人的视频www国产精品| 久久久精品国产一区二区三区| 久久精品91| 欧美 日韩 国产精品免费观看| 欧美~级网站不卡| 欧美黄色影院| 亚洲六月丁香色婷婷综合久久| 日韩视频在线一区二区| 一区二区三区欧美在线| 亚洲综合丁香| 久久久99免费视频| 裸体丰满少妇做受久久99精品| 欧美成人日韩| 欧美性大战久久久久| 国产精品一区二区三区免费观看 | 亚洲精品免费观看| 亚洲天堂男人| 性久久久久久| 免费看亚洲片| 亚洲毛片视频| 欧美亚洲午夜视频在线观看| 久久久99国产精品免费| 欧美大胆人体视频| 欧美日韩综合网| 国产精品毛片va一区二区三区| 国内精品久久久| 99re热精品| 久久se精品一区精品二区| 欧美成人一区二区三区片免费| 亚洲麻豆视频| 久久精选视频| 欧美日韩中文字幕在线| 久久躁日日躁aaaaxxxx| 欧美午夜大胆人体| 在线播放亚洲| 亚洲字幕在线观看| 米奇777在线欧美播放| 一区二区三区四区国产精品| 欧美中文在线观看| 欧美屁股在线| 一区二区在线视频播放| 亚洲亚洲精品三区日韩精品在线视频| 久久精品国产综合| 999亚洲国产精| 榴莲视频成人在线观看| 国产精品一区久久久久| 亚洲精品国产视频| 久热精品视频在线| 亚洲一区二区视频| 欧美日韩免费在线视频| 亚洲激情一区| 免费看的黄色欧美网站| 欧美一级黄色录像| 国产精品一区二区女厕厕|