Chapter 28 命名空間 多重繼承和虛繼承

2021-06-12 00:31:59 字數 1499 閱讀 4221

using宣告

eg:using std::list;//推薦

using指示

eg:using namespace std;

防止命名空間汙染,可不連續

eg:

namespace [namespacename]

命名空間可巢狀

內部的成員會把外部的同名成員遮蔽

eg:

namespace a

}訪問如下:

a::a;

a::b::a;

匿名命名空間

eg:

namespace local

}local::i=42;

eg:

class bear : public zooanimal

;class panda : public bear, public endangered

//派生列表決定構造/析構順序,先看bear,bear如果有基類就先zooanimal,再bear,再下乙個派生列表成員endangered

};

構造順序

zooanimal→bear→endangered→panda

析構順序

zooanimal←bear←endangered←panda

多重繼承下的虛函式、複製控制類作用域略

應用於乙個基類多次在派生層次中出現,但只繼承乙個共享的基類子物件

共享的基類子物件稱為虛基類

eg:

class istream : public virtual ios{};

class ostream : public virutal ios{};

eg:class bear : virtual public zooanimal{};//bear科

class raccoon : public virtual zooanimal{};//raccoon科

class panda : public bear, public raccoon, public endangered{}

構造順序

先是虛基類→再按上面多重繼承的順序來

eg:

class character{};

class bokkcharacter : public charracter{};

class toyanimal{};

class teddybear : public bookcharacter, public bear, public virtual toyanimal{};//其中bear有zooanimal這個虛基類

順序如下:

zooanimal

toyanimal

character

bokkcharacter

bear

teddybear

析構相反

chapter 2 變數 變數的命名

晚了一天,但在這博主還是祝能看到此篇部落格的同學 端午安康,平安喜樂 這兩天朋友來,玩嗨了 大駝峰 printmyname 小駝峰 printmyname 匈牙利 print my name 以上三種,不能說誰好誰壞,全憑個人習慣 喜好,在就國內的整個計算機語言大環境來說 我猜的 現在來看好像是 小...

關於flex中mx internal命名空間

flex中好多的變數都是由mx internall命名空間作字首的,代表這個變數在以後的flex builder版本裡可能會有所改變,所以要謹用 下面是具體的應用方法 import mx.controls.tree import mx.core.mx internal use namespace m...

jdom xpath定位帶xmlns命名空間的節點

jdom xpath定位帶xmlns命名空間的節點 在jdom中用 xpath定位節點通常採用以下方式 xpath xpath null element anode null saxbuilder sb new saxbuilder document doc null trycatch except...