99青草青草久热精品视频,亚洲精品乱码久久久久久麻豆,亚洲男人天堂视频,精品一久久,日韩午夜免费视频,尹人香蕉,日韩精品欧美成人

當(dāng)前位置:高考升學(xué)網(wǎng) > 招聘筆試題 > 正文

C++開(kāi)發(fā)工程師筆試題和面試題答案(50題)(四)

更新:2023-09-18 08:49:38 高考升學(xué)網(wǎng)

  47. 關(guān)聯(lián)、聚合(Aggregation)以及組合(Composition)的區(qū)別?

  涉及到UML中的一些概念:關(guān)聯(lián)是表示兩個(gè)類(lèi)的一般性聯(lián)系,比如“學(xué)生”和“老師”就是一種關(guān)聯(lián)關(guān)系;聚合表示has-a的關(guān)系,是一種相對(duì)松散的關(guān)系,聚合類(lèi)不需要對(duì)被聚合類(lèi)負(fù)責(zé),如下圖所示,用空的菱形表示聚合關(guān)系:

  從實(shí)現(xiàn)的角度講,聚合可以表示為:

  class A {…} class B { A a; …..}

  而組合表示contains-a的關(guān)系,關(guān)聯(lián)性強(qiáng)于聚合:組合類(lèi)與被組合類(lèi)有相同的生命周期,組合類(lèi)要對(duì)被組合類(lèi)負(fù)責(zé),采用實(shí)心的菱形表示組合關(guān)系:

  實(shí)現(xiàn)的形式是:

  class A{…} class B{ A a; …}

  參考文章:http://blog.csdn.net/wfwd/archive/2006/05/30/763753.aspx

  http://blog.csdn.net/wfwd/archive/2006/05/30/763760.aspx

  48.面向?qū)ο蟮娜齻(gè)基本特征,并簡(jiǎn)單敘述之?

  1. 封裝:將客觀事物抽象成類(lèi),每個(gè)類(lèi)對(duì)自身的數(shù)據(jù)和方法實(shí)行protection(private, protected,public)

  2. 繼承:廣義的繼承有三種實(shí)現(xiàn)形式:實(shí)現(xiàn)繼承(指使用基類(lèi)的屬性和方法而無(wú)需額外編碼的能力)、可視繼承(子窗體使用父窗體的外觀和實(shí)現(xiàn)代碼)、接口繼承(僅使用屬性和方法,實(shí)現(xiàn)滯后到子類(lèi)實(shí)現(xiàn))。前兩種(類(lèi)繼承)和后一種(對(duì)象組合=>接口繼承以及純虛函數(shù))構(gòu)成了功能復(fù)用的兩種方式。

  3. 多態(tài):是將父對(duì)象設(shè)置成為和一個(gè)或更多的他的子對(duì)象相等的技術(shù),賦值之后,父對(duì)象就可以根據(jù)當(dāng)前賦值給它的子對(duì)象的特性以不同的方式運(yùn)作。簡(jiǎn)單的說(shuō),就是一句話:允許將子類(lèi)類(lèi)型的指針賦值給父類(lèi)類(lèi)型的指針。

  49. 重載(overload)和重寫(xiě)(overried,有的書(shū)也叫做“覆蓋”)的區(qū)別?

  ?嫉念}目。從定義上來(lái)說(shuō):

  重載:是指允許存在多個(gè)同名函數(shù),而這些函數(shù)的參數(shù)表不同(或許參數(shù)個(gè)數(shù)不同,或許參數(shù)類(lèi)型不同,或許兩者都不同)。

  重寫(xiě):是指子類(lèi)重新定義復(fù)類(lèi)虛函數(shù)的方法。

  從實(shí)現(xiàn)原理上來(lái)說(shuō):

  重載:編譯器根據(jù)函數(shù)不同的參數(shù)表,對(duì)同名函數(shù)的名稱做修飾,然后這些同名函數(shù)就成了不同的函數(shù)(至少對(duì)于編譯器來(lái)說(shuō)是這樣的)。如,有兩個(gè)同名函數(shù):function func(p:integer):integer;和function func(p:string):integer;。那么編譯器做過(guò)修飾后的函數(shù)名稱可能是這樣的:int_func、str_func。對(duì)于這兩個(gè)函數(shù)的調(diào)用,在編譯器間就已經(jīng)確定了,是靜態(tài)的。也就是說(shuō),它們的地址在編譯期就綁定了(早綁定),因此,重載和多態(tài)無(wú)關(guān)!

  重寫(xiě):和多態(tài)真正相關(guān)。當(dāng)子類(lèi)重新定義了父類(lèi)的虛函數(shù)后,父類(lèi)指針根據(jù)賦給它的不同的子類(lèi)指針,動(dòng)態(tài)的調(diào)用屬于子類(lèi)的該函數(shù),這樣的函數(shù)調(diào)用在編譯期間是無(wú)法確定的(調(diào)用的子類(lèi)的虛函數(shù)的地址無(wú)法給出)。因此,這樣的函數(shù)地址是在運(yùn)行期綁定的(晚綁定)。

  50. 多態(tài)的作用?

  主要是兩個(gè):1. 隱藏實(shí)現(xiàn)細(xì)節(jié),使得代碼能夠模塊化;擴(kuò)展代碼模塊,實(shí)現(xiàn)代碼重用;2. 接口重用:為了類(lèi)在繼承和派生的時(shí)候,保證使用家族中任一類(lèi)的實(shí)例的某一屬性時(shí)的正確調(diào)用。

最新圖文

2020年河北新聞網(wǎng)兩學(xué)一做

時(shí)間:2023-09-18 07:0:24

2020年河北新聞網(wǎng)兩學(xué)一做

時(shí)間:2023-09-15 11:0:59

兩學(xué)一做學(xué)習(xí)教育知

時(shí)間:2023-09-21 06:0:30