亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        《C++編程規(guī)范》筆記(設(shè)計(jì)風(fēng)格)

        字號(hào):

        第1條:一個(gè)實(shí)體應(yīng)該只有一個(gè)緊湊的職責(zé)
            單一職責(zé)原則。這個(gè)原則并不那么容易執(zhí)行,即使是STL這樣的程序庫(kù),也一樣會(huì)犯違反該原則的錯(cuò)誤。在這里,舉了兩個(gè)違反這一原則的實(shí)現(xiàn):realloc和stl 中的basic_string。不過,對(duì)于basic_string,我想比起MFC中的CString還是好了不少。在《Exceptional C++ style》中,對(duì)basic_string作了剖析,并且得出一個(gè)普遍的原則:盡量將函數(shù)實(shí)現(xiàn)為獨(dú)立的函數(shù)而不是成員函數(shù)。
             嘗試用一句話來說明一個(gè)模塊的功能,既不多,也不少。如果無法用這樣的一句話加以概括,那么重新考慮規(guī)劃該模塊的職責(zé)。  
            第2條:正確、簡(jiǎn)單和清晰第一
            簡(jiǎn)單的說,堅(jiān)持KISS原則:正確優(yōu)于速度,簡(jiǎn)單優(yōu)于復(fù)雜,清晰優(yōu)于機(jī)巧,安全優(yōu)于不安全。
            程序必須為閱讀它的人編寫,只是順便用于機(jī)器執(zhí)行 * 編寫程序應(yīng)該以人為本,計(jì)算機(jī)第二
            計(jì)算機(jī)系統(tǒng)中、最快速、最可靠的組件都還不存在
            ......簡(jiǎn)單設(shè)計(jì)的重要性怎么強(qiáng)調(diào)也不過分
            使一個(gè)正確的程序變快,比使一個(gè)快速的程序正確要容易的多
            避免使用程序設(shè)計(jì)語言的冷僻特性,應(yīng)該使用最簡(jiǎn)單的有效技術(shù)
            不要毫無節(jié)制地重載運(yùn)算符。
            不要濫用匿名變量,合理使用命名變量。當(dāng)然,這不是說連vector().swap(other)這樣的慣用法也要排斥。 
            第3條:編程中應(yīng)知道何時(shí)和如何考慮可伸縮性
            從字面上來看,這差不多等于外交辭令。答案無非是“適當(dāng)?shù)摹睍r(shí)候“適當(dāng)?shù)亍笨紤]可伸縮性。這非常依賴于軟件工程師的經(jīng)驗(yàn)和知識(shí)。所以,本條目也“適當(dāng)?shù)亍被乇芰四欠N缺乏營(yíng)養(yǎng)的教導(dǎo),著重討論算法復(fù)雜度的選擇問題。
            基本上,線性復(fù)雜度可以作為一個(gè)算法是否可選的分界點(diǎn)。值得花費(fèi)精力避免選擇差于線性復(fù)雜度的算法,而不差于線性復(fù)雜度的算法則可以接受。所以,把性能放在嘴邊的兄弟們注意了,你的精力可別放錯(cuò)了地方,高德納言猶在耳:不成熟的優(yōu)化是程序設(shè)計(jì)中的萬惡之源。必要時(shí),先努力優(yōu)化復(fù)雜度(選擇好的算法----算法無用論者,去面壁!)。
            順便提一句排序算法,通用排序算法的復(fù)雜度是O(NlgN),但是特定領(lǐng)域完全可以有更好復(fù)雜度的算法