日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > > 充電吧
[導(dǎo)讀]最早接觸C++的時(shí)候,曾經(jīng)在很多資料上不止一次的看到,應(yīng)該盡量使用C++的低級(jí)特性去編程。 某些高級(jí)特性會(huì)導(dǎo)致問(wèn)題,如模版會(huì)導(dǎo)致程序難以調(diào)試,友元會(huì)破壞程序封閉性。 可是C++之所以是一門(mén)優(yōu)秀到完美的

最早接觸C++的時(shí)候,曾經(jīng)在很多資料上不止一次的看到,應(yīng)該盡量使用C++的低級(jí)特性去編程。 某些高級(jí)特性會(huì)導(dǎo)致問(wèn)題,如模版會(huì)導(dǎo)致程序難以調(diào)試,友元會(huì)破壞程序封閉性。 可是C++之所以是一門(mén)優(yōu)秀到完美的編程語(yǔ)言,絕非因?yàn)楹鸵话忝嫦驅(qū)ο笳Z(yǔ)言的“普適”,相反,作為一個(gè)合格的程序員,應(yīng)該學(xué)會(huì)掌握C++的高級(jí)特性,讓自己的代碼更加優(yōu)美,讓程序更加有效率。?

黑格爾說(shuō)“存在即合理”, ?對(duì)于友元的“合理”, 我認(rèn)為有如下幾點(diǎn):

1. ? ??友元可以擴(kuò)展類的功能。 ?對(duì)于一些結(jié)構(gòu)固定、數(shù)據(jù)固定但是操作總是在更新的類,定義友元可以避免對(duì)該類的不斷修改。因?yàn)橛言梢栽L問(wèn)私有變量, 這是它優(yōu)于組合的一點(diǎn),當(dāng)然,也是一個(gè)缺陷; 仁者見(jiàn)仁,智者見(jiàn)智——它成為缺陷的唯一原因是:你用錯(cuò)了。?

2. ? ? 友元可以表現(xiàn)一對(duì)多的關(guān)系。 ? 這個(gè)一對(duì)多比較寬泛,既可以是“一個(gè)友元對(duì)象對(duì)應(yīng)多個(gè)宿主對(duì)象”, 也可以是“一個(gè)友元類對(duì)應(yīng)多個(gè)宿主類”; 當(dāng)然,依舊有利有弊,只看使用者用法是否得當(dāng)。?

3. ? 友元可以更好的實(shí)現(xiàn)封裝和復(fù)用。 ?如同1中所述,定義友元之后,如果情景發(fā)生改變,可以做到對(duì)原接口最小的更改。


一孔之見(jiàn),希望讀者批評(píng)指正。???

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

其實(shí)在 c++語(yǔ)言里面const修飾的才算是一個(gè)真正的常量,在 c 語(yǔ)言中 const 可以說(shuō)是個(gè)“冒牌貨”。為什么會(huì)這樣?其實(shí)是 c++ 編譯器對(duì) const 進(jìn)行了加強(qiáng),當(dāng) c++ 編譯器遇到常量聲明時(shí),不會(huì)像 c...

關(guān)鍵字: c++ C語(yǔ)言 const

返回函數(shù)的引用去初始化一個(gè)新的引用這個(gè)和前面一樣,都是不會(huì)產(chǎn)生副本,但是現(xiàn)在是用返回值去初始化一個(gè)引用聲明c,也就是說(shuō)這時(shí)候變成了變量temp的別名,在c的生命周期內(nèi)temp是一直有效的,這樣做完全可以。

關(guān)鍵字: c++ 返回值 引用聲明

C++是一種面向?qū)ο蟮母呒?jí)程序設(shè)計(jì)語(yǔ)言,是C語(yǔ)言的超集。

關(guān)鍵字: c++ C語(yǔ)言

分析:這是Adobe 公司2007 年校園招聘的最新筆試題。這道題除了考察應(yīng)聘者的C++ 基本功底外,還能考察反應(yīng)能力,是一道很好的題目。 在Java 中定義了關(guān)鍵字final ,被final 修飾的

關(guān)鍵字: c++ class

泛型算法中的定制操作很多算法都會(huì)比較輸入序列中的元素,通過(guò)定制比較動(dòng)作,可以控制算法按照編程者的意圖工作。本文以string排序?yàn)槔M(jìn)行說(shuō)明,首先是缺省的排序動(dòng)作:?vector v{"This","

關(guān)鍵字: c++

為什么是lambda?講了這么多天的lambda表達(dá)式,有一個(gè)很基本的問(wèn)題沒(méi)有回答:為什么叫l(wèi)ambda表達(dá)式呢?首先這個(gè)lambda就是羅馬字母λ,lambda表達(dá)式即λ表達(dá)式。數(shù)學(xué)上有一個(gè)概念叫λ

關(guān)鍵字: c++

? ? ? ? 假設(shè)我們有個(gè)函數(shù)用來(lái)揭示處理程序的優(yōu)先權(quán),另一個(gè)函數(shù)用來(lái)在某動(dòng)態(tài)分配所得的Widget 上進(jìn)行某些帶有優(yōu)先權(quán)的處理:int priority () ; void processWi

關(guān)鍵字: c++ effective

判斷鏈表中是否有環(huán)最經(jīng)典的方法就是快慢指針,同時(shí)也是面試官大多想要得到的答案。? ? ? ?快指針pf(f就是fast的縮寫(xiě))每次移動(dòng)2個(gè)節(jié)點(diǎn),慢指針ps(s為slow的縮寫(xiě))每次移動(dòng)1個(gè)節(jié)點(diǎn),如果快

關(guān)鍵字: c++ 鏈表 快慢指針

轉(zhuǎn)載請(qǐng)注明出處:http://blog.csdn.net/callon_h/article/details/52073268 引子 上一篇博客從內(nèi)核驅(qū)動(dòng)到android app講述了android通過(guò)

關(guān)鍵字: c++ java

在網(wǎng)上看到一段讀寫(xiě)bmp格式圖像的代碼,本文對(duì)這段代碼分成兩個(gè)函數(shù)封裝起來(lái)方便使用,一個(gè)函數(shù)是讀取bmp格式的圖像,一個(gè)是向指定文件寫(xiě)入bmp格式的圖像。前提我們不需要知道這段代碼是如何讀取bmp格式

關(guān)鍵字: bmp c++
關(guān)閉