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

posts - 297,  comments - 15,  trackbacks - 0
1、 C++ 定義了哪些類型轉換操作符?分別有什么作用?

 

定義了四個操作符:static_castconst_castdynamic_castreinterpret_cast

 

static_cast可以被用于強制類型轉換(例如,non-const對象轉換為const對象,int轉換為double等等),它還可以用于很多這樣的轉換的反向轉換(例如,void*指針轉換為有類型指針,基類指針轉換為派生類指針)。但是它不能將一個const對象轉換為一個non-const對象(只有const-cast能做到)。它最接近于C-style的轉換。

const_cast一般用于強制消除對象的常量性。它是唯一能做到這一點的C++風格的強制類型。

dynamic_cast主要用于執行“安全的向下轉型”。也就是說,要確定一個對象是否是一個繼 承體系中的一個特定類型。它是唯一不能用舊風格語法執行的強制類型轉換,也是唯一可能有重大運行時代價的強制轉換。

reinterpret_cast是特意用于底層的強制轉換,導致實現 依賴(implementation-dependent)(就是說,不可移植)的結果例如,將一個指針轉型為一個整數。這樣 的強制轉換在底層代碼以外應該極為罕見。

 

2、 C++ 定義了哪些訪問控制關鍵字?分別有什么作用?

 

簡單可以歸為以下兩種描述:

1)一個類友元(包含友元函數或者友元類的成員函數或者友元類的所有成員函數)可以訪問該類的任何成員(包 括成員變量及成員方法)。

2)除去友元外,private成員只有該類自身的成員函數可 以訪問,protected成員只有該類及其派生類的成員函數可 以訪問,public成員該類及其派生類的成員函數和 對象都可以訪問。

 

3、 類的繼承方式和區別?

 

派生類繼承方式的影響

類的繼承方式有三種:privateprotectedpublic

1private屬性不能被繼承。

2

使用private繼承,父類的protectedpublic屬性在子類中變為private
使用protected繼承,父類的protectedpublic屬性在子類中變為protected
使用public繼承,父類中的protectedpublic屬性不發生改變;

 

4、 在什么情形下調用虛函數不會有多態性?為什么?

 

由 虛函數實現的動態多態性的方法:

1.      在 基類用virtual聲明成員函數為虛函數。

2.      在 派生類中重新定義此函數。

3.      定 義一個指向基類對象的指針變量,并使它指向同一類族中需要調用該函數的對象。

4.      通 過該指針變量調用此虛函數,此時調用的就是指針變量指向的對象的同名函數。

因 此,總結如下:

1、基類函數未使用virtual聲明而子類中使用virtual關鍵字聲明時調用虛函數不會有多態 性;

2、基類使用virtual而子類未重新實現該虛函數則不會有多態 性;

3、  使用子類創建的對象轉換成基類類型調用 虛函數不會有多態性;

5.      構造函數調用順序。

class Y {...}
class X : public Y {...}
X one;


構造函數的調用順序是下面的順序:

Y(); // 基類的構造函數
X(); //
繼承類的構造函數

 

對于多基類的情況,下面是一個例子:

class X : public Y, public Z
X one;

構造函數以聲明的次序調用。

Y(); // 基類構造函數首先被調用
Z();
X();

 

虛基類的構造函數在任何非虛基類構造函 數前調用。如果構造中包括多個虛基類,它們的調用順序以聲明順序為準。..

 

如果虛類是由非虛類派生而來,那非虛類 的構造函數要先被調用。下面是一個例子:

class X : public Y, virtual public Z
X one;

調用順序如下:

Z(); // 虛基類初始化
Y(); //
非虛基類
X(); //
繼承類

下面是一個復雜的例子:

class base;
class base2;
class level1 : public base2, virtual public base;
class level2 : public base2, virtual public base;
class toplevel : public level1, virtual public level2;
toplevel view;

構造函數調用順序如下:

base(); // 虛基類僅被構造一次
base2();
level2(); //
虛基類
base2();
level1();
toplevel();

如果類繼承中包括多個虛基類的實例,基類只被初始化一次。

1、如果類里面有成員類,成員類的構造函數優先被調用;

2、創建派生類的對象,基類的構造函數函數優先被調用(也優先于派 生類里的成員類);

3 基類構造函數如果有多個基類則構造函數的調用順序是某類在類派生表 中出現的順序而不是它們在成員初始化表中的順序;
4
、成員類對象構造函數如果有多個成員類對象則構造函數的調用順序是對象在類中被聲明的順序而不是它們出現在成員初始化表中的順序;
5
、派生類構造函數
作為一般規則派生類構造函數應該不能直接向一個基類數據成員賦值而是把值傳遞給適當的基類構造函數否則兩 個類的實現變成緊耦合的(tightly coupled)將更加難于正確地修改或擴展基類的實現。(基類設計者的責任是提供一組適當的基類構造函數)

 

6. RTTI是什么,怎么實現的?舉個例子。

RTTI即運行時類型識別,通過它程序能夠使用 基類的指針或引用來檢查這些指針或引用所指的對象的實際派生類型。

RTTI提供了一下兩個非常有用的操作符:

1typeid操作符,返回指針和引用所指的實際類型

2dynamic_cast操作符,將基類類型的指針或引用 安全地轉換為派生類型的指針或引用。


from:
http://www.shnenglu.com/changshoumeng/archive/2010/07/21/120992.html

posted on 2010-07-23 17:15 chatler 閱讀(243) 評論(0)  編輯 收藏 引用 所屬分類: C++_BASIS
<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

常用鏈接

留言簿(10)

隨筆分類(307)

隨筆檔案(297)

algorithm

Books_Free_Online

C++

database

Linux

Linux shell

linux socket

misce

  • cloudward
  • 感覺這個博客還是不錯,雖然做的東西和我不大相關,覺得看看還是有好處的

network

OSS

  • Google Android
  • Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
  • os161 file list

overall

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲综合视频网| 欧美日韩国产小视频| 在线视频你懂得一区| 久久九九精品| 欧美在线视频二区| 欧美日韩综合在线免费观看| 亚洲第一视频| 激情av一区| 午夜国产欧美理论在线播放| 亚洲综合日韩中文字幕v在线| 欧美成人久久| 牛牛影视久久网| 在线播放中文字幕一区| 欧美在线视频网站| 久久精品久久99精品久久| 国产精品自拍一区| 亚洲一区在线免费观看| 香蕉久久一区二区不卡无毒影院| 欧美日韩国产精品自在自线| 91久久久久久久久久久久久| 亚洲日本中文字幕免费在线不卡| 久久综合狠狠综合久久综青草 | 亚洲国产精品va| 久久久不卡网国产精品一区| 久久嫩草精品久久久精品| 韩国av一区二区三区在线观看| 欧美一激情一区二区三区| 久久九九精品99国产精品| 国产一区二区| 狂野欧美激情性xxxx| 亚洲福利视频网站| 亚洲毛片在线观看| 欧美性猛交xxxx免费看久久久| 一区二区欧美亚洲| 久久成人精品| 极品尤物一区二区三区| 免费看成人av| 99综合在线| 久久久xxx| 亚洲黄色一区二区三区| 欧美人牲a欧美精品| 亚洲午夜国产一区99re久久| 久久国产精彩视频| 亚洲国产精品综合| 国产精品高清在线观看| 欧美一区二区三区视频免费| 欧美国产精品久久| 亚洲一区二区欧美日韩| 国产一区二区三区免费在线观看| 久久久亚洲国产美女国产盗摄| 亚洲激情专区| 欧美影院在线播放| 亚洲国产一区二区三区高清 | 国产精品久久综合| 欧美在线free| 亚洲久久成人| 麻豆成人综合网| 中文精品在线| 亚洲第一二三四五区| 欧美日韩综合| 久久久水蜜桃| 亚洲欧美日本在线| 亚洲国产精品成人va在线观看| 亚洲欧美在线x视频| 亚洲国产高清一区二区三区| 国产精品久久999| 免费91麻豆精品国产自产在线观看| 一区二区三区高清在线| 亚洲成人资源| 久久久91精品国产| 亚洲午夜激情网站| 亚洲国产日韩精品| 国产亚洲欧美另类中文| 欧美日韩一区二区三区视频| 久久一区二区三区国产精品| 亚洲免费在线电影| 一本久久a久久免费精品不卡| 蜜臀a∨国产成人精品| 性伦欧美刺激片在线观看| 亚洲老板91色精品久久| 狠狠色丁香久久婷婷综合_中| 国产精品久久久久久久久免费桃花| 老司机免费视频久久| 久久国产精品72免费观看| 宅男精品视频| 99re6这里只有精品视频在线观看| 欧美成人精品在线播放| 久久免费视频在线观看| 欧美一区中文字幕| 性一交一乱一区二区洋洋av| 亚洲午夜黄色| 亚洲一本大道在线| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 亚洲一区二区动漫| 一区二区精品在线| 亚洲伦理久久| 亚洲精品网址在线观看| 亚洲人成免费| 亚洲日本中文| 日韩午夜一区| 夜夜爽www精品| 夜夜爽99久久国产综合精品女不卡| 亚洲国产视频直播| 亚洲人成啪啪网站| 亚洲精品一区二区三区不| 亚洲精品一区二区三区四区高清 | 欧美亚洲午夜视频在线观看| 亚洲综合视频网| 欧美一级理论性理论a| 久久国产精品久久w女人spa| 久久岛国电影| 美女黄网久久| 欧美日韩不卡合集视频| 欧美午夜精品理论片a级大开眼界| 欧美久久久久| 国产精品久久久久婷婷| 国产日韩亚洲欧美综合| 黑丝一区二区| 亚洲精品久久久久久下一站| av成人免费| 午夜天堂精品久久久久| 久久久999成人| 欧美国产乱视频| 亚洲精品一区二区三区樱花 | 韩国v欧美v日本v亚洲v| 在线欧美小视频| 99国产精品久久| 香蕉久久夜色精品国产| 久久亚洲综合色一区二区三区| 欧美高清视频在线播放| 亚洲精品一二三| 午夜亚洲影视| 欧美jizz19性欧美| 国产精品久久久久一区二区三区共| 国产精品综合av一区二区国产馆| 黄色成人精品网站| av不卡免费看| 久久久久久一区二区三区| 亚洲国产一成人久久精品| 亚洲影视在线| 女人天堂亚洲aⅴ在线观看| 国产精品久久久久久久久| 精品成人国产在线观看男人呻吟| 99国产一区| 久久精品人人| 亚洲免费观看高清完整版在线观看熊 | 亚洲女人小视频在线观看| 久久综合电影一区| 99天天综合性| 久久中文精品| 国产欧美精品日韩| 99热这里只有成人精品国产| 久久九九有精品国产23| 99亚洲视频| 欧美成人三级在线| 国产主播一区| 亚洲欧美一区二区三区极速播放| 欧美大片一区| 欧美在线视频网站| 国产精品视频网| 一区二区三区不卡视频在线观看| 久久久噜噜噜久噜久久| 亚洲私人影院| 欧美日韩不卡| 亚洲精品国产拍免费91在线| 久久久久一区| 午夜在线不卡| 国产精品入口尤物| 亚洲一区黄色| 99riav久久精品riav| 欧美黑人国产人伦爽爽爽| 在线看片一区| 久久婷婷蜜乳一本欲蜜臀| 亚洲欧美中文日韩在线| 欧美性感一类影片在线播放| 一本色道久久综合狠狠躁篇的优点| 欧美成人精品不卡视频在线观看| 亚洲欧美日韩一区二区| 国产精品美女久久久久久2018 | 欧美大片91| 久久久久久久国产| 韩国三级在线一区| 久久久欧美一区二区| 欧美一区二区视频97| 国产色综合久久| 久久国产欧美日韩精品| 亚洲欧美久久久| 国产欧美日韩视频一区二区| 午夜精品久久久久久久99樱桃| 在线亚洲精品福利网址导航| 欧美日韩一区高清| 亚洲一区二区视频在线观看| 一区二区久久久久久| 国产精品久久网| 欧美亚洲视频一区二区| 午夜精品电影| 极品av少妇一区二区| 欧美国产亚洲视频| 欧美精品亚洲精品| 亚洲免费视频中文字幕|