一、組 合二、繼承和派生三、派生類的聲明和對象定義_第1頁
一、組 合二、繼承和派生三、派生類的聲明和對象定義_第2頁
一、組 合二、繼承和派生三、派生類的聲明和對象定義_第3頁
一、組 合二、繼承和派生三、派生類的聲明和對象定義_第4頁
一、組 合二、繼承和派生三、派生類的聲明和對象定義_第5頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、C/C+程序設(shè)計(jì)程序設(shè)計(jì)1C/C+程序設(shè)計(jì)程序設(shè)計(jì)2一、組一、組 合合1. 組合的概念組合的概念 C+中組合是指結(jié)構(gòu)和類的聲明嵌入結(jié)構(gòu)變量或?qū)ο笞髦薪M合是指結(jié)構(gòu)和類的聲明嵌入結(jié)構(gòu)變量或?qū)ο笞鳛槠涑蓡T的現(xiàn)象。嵌入的對象成員亦稱為成員對象,包容這為其成員的現(xiàn)象。嵌入的對象成員亦稱為成員對象,包容這個(gè)成員對象的類可稱為組合類或包容類。個(gè)成員對象的類可稱為組合類或包容類。 當(dāng)構(gòu)造一個(gè)組合類的對象時(shí),系統(tǒng)首先為每一個(gè)數(shù)據(jù)成當(dāng)構(gòu)造一個(gè)組合類的對象時(shí),系統(tǒng)首先為每一個(gè)數(shù)據(jù)成員分配內(nèi)存空間,僅當(dāng)其中的成員對象獲得完備的內(nèi)存時(shí)才員分配內(nèi)存空間,僅當(dāng)其中的成員對象獲得完備的內(nèi)存時(shí)才導(dǎo)致組合類實(shí)例的誕生。導(dǎo)致組合類

2、實(shí)例的誕生。 編譯器先調(diào)用嵌入對象的構(gòu)造函數(shù),然后調(diào)用組合類的編譯器先調(diào)用嵌入對象的構(gòu)造函數(shù),然后調(diào)用組合類的構(gòu)造函數(shù)。構(gòu)造函數(shù)。 C/C+程序設(shè)計(jì)程序設(shè)計(jì)3 嵌入對象所隸屬的類或嵌入類對應(yīng)既定的事物,組合類嵌入對象所隸屬的類或嵌入類對應(yīng)既定的事物,組合類對應(yīng)某種新生的事物。對應(yīng)某種新生的事物。 C+中一個(gè)重要的思想是先構(gòu)造既定的對象,然后構(gòu)造中一個(gè)重要的思想是先構(gòu)造既定的對象,然后構(gòu)造新生的對象。新生的對象。 這也適應(yīng)繼承的情況,先構(gòu)造基類再構(gòu)造派生類。但析這也適應(yīng)繼承的情況,先構(gòu)造基類再構(gòu)造派生類。但析構(gòu)的次序與構(gòu)造相反,先誕生的對象后撤離內(nèi)存空間。構(gòu)的次序與構(gòu)造相反,先誕生的對象后撤離內(nèi)

3、存空間。 對象的構(gòu)造和析構(gòu)遵循堆棧空間先進(jìn)后出的原理。對象的構(gòu)造和析構(gòu)遵循堆棧空間先進(jìn)后出的原理。 C/C+程序設(shè)計(jì)程序設(shè)計(jì)42. 引用型成員和引用型成員和const成員成員 類中允許存在引用型數(shù)據(jù)成員和類中允許存在引用型數(shù)據(jù)成員和const數(shù)據(jù)成員。引用數(shù)據(jù)成員。引用應(yīng)依附于另一個(gè)獨(dú)立的變量,等待及時(shí)的初始化。應(yīng)依附于另一個(gè)獨(dú)立的變量,等待及時(shí)的初始化。Const數(shù)數(shù)據(jù)成員是僅僅初始化一次其值便不再改變的數(shù)據(jù)成員。據(jù)成員是僅僅初始化一次其值便不再改變的數(shù)據(jù)成員。 對于存在對于存在const型的不變成員或引用型成員,系統(tǒng)提供型的不變成員或引用型成員,系統(tǒng)提供的缺省的賦值運(yùn)算符函數(shù)不起作用。引用

4、型成員和不變成員的缺省的賦值運(yùn)算符函數(shù)不起作用。引用型成員和不變成員只能借助冒號語法初始化。只能借助冒號語法初始化。C/C+程序設(shè)計(jì)程序設(shè)計(jì)5 當(dāng)基于內(nèi)存數(shù)據(jù)共享而設(shè)置引用型成員的時(shí)候,應(yīng)注意當(dāng)基于內(nèi)存數(shù)據(jù)共享而設(shè)置引用型成員的時(shí)候,應(yīng)注意引用型成員應(yīng)關(guān)聯(lián)到一個(gè)具有獨(dú)立的生存期長或等長的同類引用型成員應(yīng)關(guān)聯(lián)到一個(gè)具有獨(dú)立的生存期長或等長的同類型變量。型變量。 具有具有const成員的對象預(yù)埋一個(gè)不變的成員,這樣的類成員的對象預(yù)埋一個(gè)不變的成員,這樣的類是一個(gè)奇怪的類,因此編編程時(shí)應(yīng)仔細(xì)加以處理。是一個(gè)奇怪的類,因此編編程時(shí)應(yīng)仔細(xì)加以處理。 下面的例子為簡單見嵌入一個(gè)內(nèi)置下面的例子為簡單見嵌入一

5、個(gè)內(nèi)置int類型的引用型成類型的引用型成員和不變成員,通過該例說明構(gòu)造函數(shù)初始化列表的語法格員和不變成員,通過該例說明構(gòu)造函數(shù)初始化列表的語法格式。式。 C/C+程序設(shè)計(jì)程序設(shè)計(jì)6例例 CType內(nèi)含內(nèi)含int類型的引用型成員和類型的引用型成員和const成員成員#include static int numc=0;class CType public: CType (int x=1,int y=2); CType:CType (); private: int n; const int c; public: int& r; CType:CType() printf (%d.n=%d,r

6、=%d CType:CType();, numc-,n,r); C/C+程序設(shè)計(jì)程序設(shè)計(jì)7CType:CType (int x,int y) :r(y), c(x) n=x; printf (%d. n=%d,r=%d CType (int,int);, +numc,n,r); CType g; void main() printf (Enter into main()n);CType x (3,4); printf (x.r=%dn,x.r); printf (Go outof main() n);C/C+程序設(shè)計(jì)程序設(shè)計(jì)8 /程序運(yùn)行輸出結(jié)果:程序運(yùn)行輸出結(jié)果: 1. n=1,r=2 CT

7、ype(int,int);Enter into main() 2. n=3,r=4 CType(int,int);x.r=4 2. n=3,r=4199100 CType:CType();Go outof main() 1. n=1,r=-858993460 CType:CType(); 此題輸出一個(gè)不可靠的結(jié)果。原因在于:此題輸出一個(gè)不可靠的結(jié)果。原因在于: y是一個(gè)函數(shù)入口堆棧空間的局部變量,是一個(gè)函數(shù)入口堆??臻g的局部變量,r是一個(gè)生存期是一個(gè)生存期由對象控制的引用型成員。由對象控制的引用型成員。 將引用型成員關(guān)聯(lián)到生存期短的局部變量是危險(xiǎn)的。將引用型成員關(guān)聯(lián)到生存期短的局部變量是危險(xiǎn)的

8、。C/C+程序設(shè)計(jì)程序設(shè)計(jì)93. 嵌入對象的初始化嵌入對象的初始化 嵌入對象所屬類最好存在顯式或隱含的可訪問的缺省構(gòu)嵌入對象所屬類最好存在顯式或隱含的可訪問的缺省構(gòu)造函數(shù),從而可被編譯器自動(dòng)隱含調(diào)用。下面的規(guī)則描述嵌造函數(shù),從而可被編譯器自動(dòng)隱含調(diào)用。下面的規(guī)則描述嵌入對象顯式的初始化:入對象顯式的初始化: a.組合類的構(gòu)造函數(shù)顯式調(diào)用嵌入對象自身的帶參構(gòu)組合類的構(gòu)造函數(shù)顯式調(diào)用嵌入對象自身的帶參構(gòu)造函數(shù),這一調(diào)用是通過冒號初始化語法進(jìn)行的。造函數(shù),這一調(diào)用是通過冒號初始化語法進(jìn)行的。 b. 嵌入對象按照其在組合類中的聲明次序調(diào)用自身的嵌入對象按照其在組合類中的聲明次序調(diào)用自身的構(gòu)造函數(shù),而不

9、是冒號語法列表中出現(xiàn)的次序。構(gòu)造函數(shù),而不是冒號語法列表中出現(xiàn)的次序。 c. 嵌入對象的構(gòu)造函數(shù)對于組合類是可訪問的,可訪嵌入對象的構(gòu)造函數(shù)對于組合類是可訪問的,可訪問的含義是或者嵌入對象的構(gòu)造函數(shù)是公共的,或者組合類問的含義是或者嵌入對象的構(gòu)造函數(shù)是公共的,或者組合類聲明為嵌入類的友員類等。聲明為嵌入類的友員類等。C/C+程序設(shè)計(jì)程序設(shè)計(jì)10例例 嵌入類和組合類的對象生滅嵌入類和組合類的對象生滅 #include static int num=0; class CEmbed public: int n; CEmbed (int ,int ); private: int& m_r; ;

10、 CEmbed:CEmbed (int x, int y) :m_r (n) n =x; printf (%d.n=%d, CEmbed (int,int) ;,+num, n); C/C+程序設(shè)計(jì)程序設(shè)計(jì)11 class CContain public:CEmbed a; CContain (int x=1,int y=2); private: const CEmbed b; ; CContain:CContain(int x,int y):b(y,y),a(x,x) printf (%d.a=%d, b=%d, CContain (int,int); n,+num, a.n,b.n); v

11、oid main() CContain z (3,4); /輸出輸出: 1. n=3, CEmbed(int,int); 2. n=4, CEmbed(int,int); 3.a=3,b=4, CContain(int,int);C/C+程序設(shè)計(jì)程序設(shè)計(jì)124. 冒號初始化語法冒號初始化語法 冒號初始化是對象定義時(shí)調(diào)用構(gòu)造函數(shù)進(jìn)行初始化的一冒號初始化是對象定義時(shí)調(diào)用構(gòu)造函數(shù)進(jìn)行初始化的一種方式種方式 。構(gòu)造函數(shù)冒號初始化語法的一般格式為:。構(gòu)造函數(shù)冒號初始化語法的一般格式為: 類名類名:類名類名(形參列表形參列表):引用型成員引用型成員(左值左值), 嵌入對象嵌入對象(實(shí)參列表實(shí)參列表),co

12、nst型成員型成員(右值右值),. 其它成員初始化其它成員初始化; 例如:例如: CEmbed (int x, int y): m_r (n) . CContain (int x,int y):a (x,x),b (y,y) .C/C+程序設(shè)計(jì)程序設(shè)計(jì)13 該語法的格式是在類的構(gòu)造函數(shù)表題頭后緊跟冒號該語法的格式是在類的構(gòu)造函數(shù)表題頭后緊跟冒號“:”,冒號之后是成員對象的構(gòu)造函數(shù)初始化調(diào)用列表,各,冒號之后是成員對象的構(gòu)造函數(shù)初始化調(diào)用列表,各列表分項(xiàng)之間以逗號分隔,但不構(gòu)成先后求值的語義。列表分項(xiàng)之間以逗號分隔,但不構(gòu)成先后求值的語義。 每一個(gè)嵌入成員對象采用函數(shù)對象名語法顯式調(diào)用自身每一個(gè)

13、嵌入成員對象采用函數(shù)對象名語法顯式調(diào)用自身的構(gòu)造函數(shù),對于簡單變量也采用構(gòu)造函數(shù)的形式,不采用的構(gòu)造函數(shù),對于簡單變量也采用構(gòu)造函數(shù)的形式,不采用等號形式的初始化。等號形式的初始化。 冒號之后的列表全部省略時(shí)對應(yīng)編譯器隱含調(diào)用成員對冒號之后的列表全部省略時(shí)對應(yīng)編譯器隱含調(diào)用成員對象可訪問的缺省構(gòu)造函數(shù),這是編譯器的默認(rèn)設(shè)置。象可訪問的缺省構(gòu)造函數(shù),這是編譯器的默認(rèn)設(shè)置。 構(gòu)造函數(shù)中形參作用域始于冒號處止于最后一個(gè)右花括構(gòu)造函數(shù)中形參作用域始于冒號處止于最后一個(gè)右花括號。號。 因此可以采用形參或其它的全局名稱初始化嵌入對象、因此可以采用形參或其它的全局名稱初始化嵌入對象、引用型成員或引用型成員或

14、const型數(shù)據(jù)成員。型數(shù)據(jù)成員。C/C+程序設(shè)計(jì)程序設(shè)計(jì)14 冒號初始化語法原本是為成員對象,引用型成員或冒號初始化語法原本是為成員對象,引用型成員或const數(shù)據(jù)成員設(shè)置的,但對于其它的成員變量也可以從構(gòu)數(shù)據(jù)成員設(shè)置的,但對于其它的成員變量也可以從構(gòu)造函數(shù)體遷移至冒號后,造函數(shù)體遷移至冒號后,如將:如將: CEmbed:CEmbed (int x, int y) : m_r(n) n=x; 變?yōu)椋鹤優(yōu)椋?CEmbed:CEmbed (int x, int y) : m_r(m) , n(x) 變量成員模擬構(gòu)造函數(shù)變量成員模擬構(gòu)造函數(shù)n(x)形式進(jìn)行初始賦值。形式進(jìn)行初始賦值。 m_r(n)

15、建立引用名和變量名的關(guān)聯(lián),建立引用名和變量名的關(guān)聯(lián),m_r是相對獨(dú)立是相對獨(dú)立的成員變量的成員變量n的別名。的別名。C/C+程序設(shè)計(jì)程序設(shè)計(jì)15二、繼承和派生二、繼承和派生1. 繼承的概念繼承的概念 繼承是將已有的數(shù)據(jù)結(jié)構(gòu)和算法加以接納融為自身的一繼承是將已有的數(shù)據(jù)結(jié)構(gòu)和算法加以接納融為自身的一部分,派生是將新的成果連結(jié)于原來的知識體系中。繼承和部分,派生是將新的成果連結(jié)于原來的知識體系中。繼承和派生是承上啟下的一個(gè)聯(lián)系過程,原來的數(shù)據(jù)結(jié)構(gòu)和算法對派生是承上啟下的一個(gè)聯(lián)系過程,原來的數(shù)據(jù)結(jié)構(gòu)和算法對應(yīng)基類,連結(jié)于基類的新的數(shù)據(jù)結(jié)構(gòu)和算法構(gòu)成派生類,由應(yīng)基類,連結(jié)于基類的新的數(shù)據(jù)結(jié)構(gòu)和算法構(gòu)成派

16、生類,由此形成繼承樹層次體系。此形成繼承樹層次體系。 繼承是面向?qū)ο罄碚摮绦蛟O(shè)計(jì)中一種重要的機(jī)制,繼承繼承是面向?qū)ο罄碚摮绦蛟O(shè)計(jì)中一種重要的機(jī)制,繼承面向事物動(dòng)態(tài)的發(fā)展,也是人認(rèn)識自然的一個(gè)寫照。人首先面向事物動(dòng)態(tài)的發(fā)展,也是人認(rèn)識自然的一個(gè)寫照。人首先直面的是簡單的自然現(xiàn)象,把這些簡單現(xiàn)象以文字記錄下來直面的是簡單的自然現(xiàn)象,把這些簡單現(xiàn)象以文字記錄下來就形成基本規(guī)律的總結(jié)。就形成基本規(guī)律的總結(jié)。C/C+程序設(shè)計(jì)程序設(shè)計(jì)16 對于程序員而言是建立一個(gè)基本的類。隨著對自然現(xiàn)象對于程序員而言是建立一個(gè)基本的類。隨著對自然現(xiàn)象的深入研究和廣泛的積累,各種學(xué)科流派相應(yīng)的應(yīng)運(yùn)而生。的深入研究和廣泛的積

17、累,各種學(xué)科流派相應(yīng)的應(yīng)運(yùn)而生。對于跟蹤模擬這些流派動(dòng)態(tài)發(fā)展的程序員而言,相應(yīng)建立各對于跟蹤模擬這些流派動(dòng)態(tài)發(fā)展的程序員而言,相應(yīng)建立各種各樣的派生類,而無須另起爐灶。種各樣的派生類,而無須另起爐灶。 知識的每一積累,對應(yīng)類的一個(gè)擴(kuò)展。古老的經(jīng)驗(yàn)沉積知識的每一積累,對應(yīng)類的一個(gè)擴(kuò)展。古老的經(jīng)驗(yàn)沉積在基類的數(shù)據(jù)結(jié)構(gòu)和算法中,時(shí)髦的思潮注冊在最近派生的在基類的數(shù)據(jù)結(jié)構(gòu)和算法中,時(shí)髦的思潮注冊在最近派生的類中。編譯器優(yōu)先利用最近成果的思想,優(yōu)先使用派生類中類中。編譯器優(yōu)先利用最近成果的思想,優(yōu)先使用派生類中的資源信息。這是面向?qū)ο罄碚摓槌绦騿T提供的一種總體策的資源信息。這是面向?qū)ο罄碚摓槌绦騿T提供的

18、一種總體策劃和具體實(shí)施綱領(lǐng)。劃和具體實(shí)施綱領(lǐng)。 這其中的優(yōu)點(diǎn)是程序的開發(fā)和課題的突破可以同步協(xié)調(diào)這其中的優(yōu)點(diǎn)是程序的開發(fā)和課題的突破可以同步協(xié)調(diào)的前進(jìn),而不必從零出發(fā)。的前進(jìn),而不必從零出發(fā)。C/C+程序設(shè)計(jì)程序設(shè)計(jì)17 基于歷史的原因和書寫的習(xí)慣,繼承樹層次體系將基類基于歷史的原因和書寫的習(xí)慣,繼承樹層次體系將基類畫在上面,派生類則畫在基類的下面。畫在上面,派生類則畫在基類的下面。 基類也有稱為父類的,派生類亦有稱為子類的。基類也有稱為父類的,派生類亦有稱為子類的。 父類和子類的稱謂容易構(gòu)成誤解。因此本書不用或廢棄父類和子類的稱謂容易構(gòu)成誤解。因此本書不用或廢棄模糊的父類和子類的稱謂。模糊的

19、父類和子類的稱謂。 C+語言允許繼承和派生出現(xiàn)多對一、一對多的關(guān)系。語言允許繼承和派生出現(xiàn)多對一、一對多的關(guān)系。 一個(gè)基類可以擁有多個(gè)派生類,這樣的基類在程序設(shè)計(jì)一個(gè)基類可以擁有多個(gè)派生類,這樣的基類在程序設(shè)計(jì)中的地位舉足輕重,一個(gè)派生類可以同時(shí)擁有多個(gè)基類。如中的地位舉足輕重,一個(gè)派生類可以同時(shí)擁有多個(gè)基類。如果一個(gè)派生類上逆時(shí)只有一個(gè)基類,稱為單繼承層次體系。果一個(gè)派生類上逆時(shí)只有一個(gè)基類,稱為單繼承層次體系。 如果一個(gè)派生類上逆時(shí)存在兩個(gè)以上的基類,稱為多繼如果一個(gè)派生類上逆時(shí)存在兩個(gè)以上的基類,稱為多繼承層次體系。承層次體系。 MFC類庫是單繼承體系。類庫是單繼承體系。iostream

20、類是多繼類是多繼承體系。承體系。C/C+程序設(shè)計(jì)程序設(shè)計(jì)18 CObjectCCmdTarget CWinAppCUserDocCDocumentCWinThread CWndCUserApp CViewCFrameWnd CDialogCUserViewCUserDialogCMainFrame 圖圖 MFC關(guān)鍵類的層次體系關(guān)鍵類的層次體系C/C+程序設(shè)計(jì)程序設(shè)計(jì)192. 間接基類和間接派生類間接基類和間接派生類 直接基類就是直接出現(xiàn)于類聲明的基類表中的類。一個(gè)直接基類就是直接出現(xiàn)于類聲明的基類表中的類。一個(gè)類都可以候選為基類,也可以作為派生類連結(jié)到另外一個(gè)既類都可以候選為基類,也可以作為派

21、生類連結(jié)到另外一個(gè)既定的類上,一個(gè)類既是另外一個(gè)類的基類本身又是上層類的定的類上,一個(gè)類既是另外一個(gè)類的基類本身又是上層類的派生類,由此形成復(fù)雜的類層次體系。派生類,由此形成復(fù)雜的類層次體系。 如如CWnd上有直接基類上有直接基類CCmdTarget,間接基類,間接基類CObject,下有直接派生類,下有直接派生類 CView,更等待用戶間接派生的,更等待用戶間接派生的類類CUserView。 C+ 語言不允許上面的語言不允許上面的(間接間接)基類成為基類成為(間接間接)派生類的派生類的派生類,也就是禁止數(shù)據(jù)結(jié)構(gòu)中環(huán)的出現(xiàn)。這樣繼承和派生派生類,也就是禁止數(shù)據(jù)結(jié)構(gòu)中環(huán)的出現(xiàn)。這樣繼承和派生就是

22、一個(gè)有向無環(huán)圖。就是一個(gè)有向無環(huán)圖。 C/C+程序設(shè)計(jì)程序設(shè)計(jì)20三、派生類的聲明和對象定義三、派生類的聲明和對象定義 對于一個(gè)特定的演化斷面,設(shè)若干基類已經(jīng)適當(dāng)?shù)臉?gòu)對于一個(gè)特定的演化斷面,設(shè)若干基類已經(jīng)適當(dāng)?shù)臉?gòu)建,則新類追加于這些基類的聲明格式分為兩種形式:建,則新類追加于這些基類的聲明格式分為兩種形式: 一種是單繼承,一種是多繼承一種是單繼承,一種是多繼承 這里給出單繼承方式的聲明格式:這里給出單繼承方式的聲明格式: class CDerived:繼承方式:繼承方式 CBase CDerived 類的成員聲明語句類的成員聲明語句; ; class 派生類名:繼承方式派生類名:繼承方式 直接

23、基類名直接基類名 派生類的成員聲明語句派生類的成員聲明語句; ;C/C+程序設(shè)計(jì)程序設(shè)計(jì)21 其中派生類名其中派生類名CDerived是用戶新引入的類名,是用戶新引入的類名,CBase是已經(jīng)建立的類名,作為派生類的直接基類名,冒號表現(xiàn)一是已經(jīng)建立的類名,作為派生類的直接基類名,冒號表現(xiàn)一種承前啟后的方式。種承前啟后的方式。 通過這種方式用戶定義的類可插入到已經(jīng)存在的類族體通過這種方式用戶定義的類可插入到已經(jīng)存在的類族體系。派生類的成員包括繼承的成員和新增加的成員,成員的系。派生類的成員包括繼承的成員和新增加的成員,成員的訪問屬性只有三種,優(yōu)先由類聲明內(nèi)的訪問屬性只有三種,優(yōu)先由類聲明內(nèi)的 pr

24、ivate,public,protected明顯確定,繼承的成員可由繼承方式隱含確定。明顯確定,繼承的成員可由繼承方式隱含確定。 繼承方式由關(guān)鍵字繼承方式由關(guān)鍵字private,public,protected給出。給出。C/C+程序設(shè)計(jì)程序設(shè)計(jì)22單繼承略微具體的格式為:單繼承略微具體的格式為:class CBase public: float m_t1; void f3(); protected:int m_t2; ;class CDerived: public /* protected , private */ CBase /類聲明內(nèi)的類聲明內(nèi)的private,public,protected屏蔽繼承方式屏蔽繼承方式 /對訪問控制的影響對訪問控制的影響 public: 公共成員聲明語句公共成員聲明語句; CBase: m_t2; 基類名基類名:基類非私有的成員名基類非私有的成員名2; protected: 保護(hù)成員聲明語句保護(hù)成員聲明語句; C/C+程序設(shè)計(jì)程序設(shè)計(jì)23 CBase: m_t1; 基類名基類名:基類非私有的成員名基類非私有的成員名1;private: 私有成員聲明語句私有成員聲明語句;CB

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論