freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

高質(zhì)量c編程指南-wenkub.com

2025-04-03 05:59 本頁面
   

【正文】 示例 45(a)中的 x 值屬于半開半閉區(qū)間“0 = x N”,起點(diǎn)到終點(diǎn)的間隔為 N,循環(huán)次數(shù)為 N。 iN。}if (condition){for (i=0。for (i=0。示例 44(c)的程序比示例 44(d)多執(zhí)行了 N1 次邏輯判斷。 col++ ){for (row=0。 col5。例如示例 44(b)的效率比示例 44(a)的高。 循環(huán)語句的效率C++/C 循環(huán)語句中,for 語句使用頻率最高,while 語句其次,do 語句很少用。return y。假設(shè)指針變量的名字為 p,它與零值比較的標(biāo)準(zhǔn) if 語句如下:if (p == NULL) // p 與 NULL 顯式比較,強(qiáng)調(diào) p 是指針變量if (p != NULL)不要寫成if (p == 0) // 容易讓人誤解 p 是整型變量if (p != 0) 或者if (p) // 容易讓人誤解 p 是布爾變量if (!p) 對(duì) if 語句的補(bǔ)充說明29 / 101有時(shí)候我們可能會(huì)看到 if (NULL == p) 這樣古怪的格式。 (x=EPSINON))其中 EPSINON 是允許的誤差(即精度) 。千萬要留意,無論是 float 還是 double 類型的變量,都有精度限制。TRUE 的值究竟是什么并沒有統(tǒng)一的標(biāo)準(zhǔn)。 (bc))而是成了令人費(fèi)解的if ( (ab)c ) if 語句if 語句是 C++/C 語言中最簡(jiǎn)單、最常用的語句,然而很多程序員用隱含錯(cuò)誤的方式寫if 語句。d = a + r。 // 復(fù)合表達(dá)式過于復(fù)雜? 【規(guī)則 422】不要有多用途的復(fù)合表達(dá)式。amp。允許復(fù)合表達(dá)式存在的理由是:(1)書寫簡(jiǎn)潔;(2)可以提高編譯效率。例如:word = (high 8) | low27 / 101if ((a | b) amp。amp。注意一元運(yùn)算符 + * 的優(yōu)先級(jí)高于對(duì)應(yīng)的二元運(yùn)算符。表達(dá)式和語句都屬于 C++/C 的短語結(jié)構(gòu)語法。m_height = height。例如:int g_howManyPeople。const int MAX_LENGTH = 100。例如:BOOL flag。 // 類名class LeafNode。這是為了防止程序員偷懶,不肯為命名動(dòng)腦筋而導(dǎo)致產(chǎn)生無意義的名字(因?yàn)橛脭?shù)字編號(hào)最省事) 。int maxValue。例如:DrawBox()。float oldValue。// 函數(shù) foo 與 FOO 容易混淆void FOO(float x)。別把這兩類風(fēng)格混在一起用。單字符的名字也是有用的,常見的如 i,j,k,m,n,x,y,z 等,它們通常可用作函數(shù)內(nèi)的局部變量。 maxinformation”原則。程序中的英文單詞一般不會(huì)太復(fù)雜,用詞應(yīng)當(dāng)準(zhǔn)確。 共性規(guī)則本節(jié)論述的共性規(guī)則是被大多數(shù)程序員采納的,我們應(yīng)當(dāng)在遵循這些共性規(guī)則的前提下,再擴(kuò)充特定的規(guī)則,如 節(jié)。 // 前綴 i 表示 int 類型float fX, fY, fZ。如果一個(gè)變量由 ppch 開頭,則表明它是指向字符指針的指針?!? private:int i, j。 … public:void Func1(void)。我建議讀者采用“以行為為中心”的書寫方式,即首先考慮類應(yīng)該提供什么樣的函數(shù)。類的版式主要有兩種方式:(1)將 private 類型的數(shù)據(jù)寫在前面,而將 public 類型的函數(shù)寫在后面,如示例 83(a ) 。示例 26 程序的注釋/** 函數(shù)介紹:* 輸入?yún)?shù):* 輸出參數(shù):* 返回值 :*/void Function(float x, float y, float z){ …}if (…){ … while (…) {…} // end of while…} // end of if21 / 101 類的版式類可以將數(shù)據(jù)和函數(shù)封裝在一起,其中函數(shù)表示了類的行為(或稱服務(wù)) 。錯(cuò)誤的注釋不但無益反而有害。例如 i++。程序中的注釋不可喧賓奪主,注釋太多了會(huì)讓人眼花繚亂。注釋通常用于:(1)版本、版權(quán)聲明;(2)函數(shù)接口說明;(3)重要的代碼行或段落提示。? 【規(guī)則 261】應(yīng)當(dāng)將修飾符 * 和 & 緊靠變量名例如:char *name。 從語義上講此寫法比較直觀,即 x 是int 類型的指針。 very_longer_condition。amp。拆分出的新行要進(jìn)行適當(dāng)?shù)目s進(jìn),使排版整齊,語句可讀。 condition。示例 24(a)為風(fēng)格良好的對(duì)齊,示例 24(b)為風(fēng)格不良的對(duì)齊。bFunction()。 // 不良的風(fēng)格 array[5] = 0。 // 不好的風(fēng)格int *x = amp。i++) // 不良的風(fēng)格for (i = 0。c=d) // 不良的風(fēng)格for (i=0。 // 不良的風(fēng)格if (year = 2022) // 良好的風(fēng)格if(year=2022) // 不良的風(fēng)格if ((a=b) amp。 i++)和 if ((a=b) amp?!保ǖ刂愤\(yùn)算符)等前后不加空格。? 【規(guī)則 235】賦值操作符、比較操作符、算術(shù)操作符、邏輯操作符、位域操作符,如“=”、 “+=” “=”、 “=”、 “+”、 “*”、 “%”、 “amp。如果‘。? 【規(guī)則 232】函數(shù)名之后不要留空格,緊跟左括號(hào) ‘(’ ,以與關(guān)鍵字區(qū)別。 // 定義并初紿化 height int depth = 10。如果引用了未被初始化的變量,可能會(huì)導(dǎo)致程序錯(cuò)誤。 condition。 condition。 z = e + f。y = c + d。 // 寬度int height。不論執(zhí)行語句有多少都要加{}。}// 空行statement4。參見示例 21(a)? 【規(guī)則 212】在一個(gè)函數(shù)體內(nèi),邏揖上密切相關(guān)的語句之間不加空行,其它地方應(yīng)加空行分隔??招械皿w(不過多也不過少)將使程序的布局更加清晰。好的“書法”可讓人對(duì)程序一目了然,看得興致勃勃。為了加強(qiáng)信息隱藏,這些私有的頭文件可以和定義文件存放于同一個(gè)目錄。如果某個(gè)接口被實(shí)現(xiàn)或被使用時(shí),其方式與頭文件中的聲明不一致,編譯器就會(huì)指出錯(cuò)誤,這一簡(jiǎn)單的規(guī)則能大大減輕程序員調(diào)試、改錯(cuò)的負(fù)擔(dān)。在很多場(chǎng)合,源代碼不便(或不準(zhǔn))向用戶公布,只要向用戶提供頭文件和二進(jìn)制的庫即可。假設(shè)定義文件的名稱為 ,定義文件的結(jié)構(gòu)參見示例 13。 // 全局函數(shù)聲明…class Box // 類結(jié)構(gòu)聲明{…}。建議將成員函數(shù)的定義與聲明分開,不論該函數(shù)體有多么小。? 【規(guī)則 122】用 include 格式來引用標(biāo)準(zhǔn)庫的頭文件(編譯器將從標(biāo)準(zhǔn)庫目錄開始搜索) 。(2)預(yù)處理塊。(2)文件名稱,標(biāo)識(shí)符,摘要。一個(gè)文件用于保存程序的聲明(declaration ) ,稱為頭文件。預(yù)計(jì)到 2022 年 7 月,我們將建立切合中國國情的 CMMI 3 級(jí)解決方案。作者愿意公開本書的電子文檔。上海貝爾的員工可以向網(wǎng)絡(luò)應(yīng)用事業(yè)部軟件工程研究小組索取 CMMI 有關(guān)資料,最好能參加培訓(xùn)。可是過了兩周,他告訴我,他忙了兩天追查出一個(gè) Bug,想不到又是“野指針”出問題,只好重讀第七章。編程也是同樣道理。世上不存在最好的編程風(fēng)格,一切因需求而定。編程考試結(jié)束后,請(qǐng)閱讀本書的正文。(3)如果你考出 85 分以上的好成績(jī),你有義務(wù)和資格為你所在的團(tuán)隊(duì)作“C++/C 編程”培訓(xùn)。編程質(zhì)量差往往是由于不良習(xí)慣造成的,與人的智力、能力沒有多大關(guān)系,還是有藥可救的。希望和我一樣在國內(nèi)土生土長(zhǎng)的程序員朋友們能夠做到:(1)知錯(cuò)就改;(2)經(jīng)常溫故而知新;(3)堅(jiān)持學(xué)習(xí),天天向上。定義 2:能長(zhǎng)期穩(wěn)定地編寫出高難度、高質(zhì)量程序的程序員稱為編程高手。真的不是我“心狠手辣”或者要求過高,而是很多軟件開發(fā)人員對(duì)自己的要求不夠高。我做過現(xiàn)場(chǎng)試驗(yàn):有一次部門新進(jìn) 14 名碩士生,在開歡迎會(huì)之前對(duì)他們進(jìn)行“C++/C 編程技能”摸底考試。事實(shí)證明如此。勤奮好學(xué)的程序員長(zhǎng)期在低質(zhì)量的程序堆中滾爬,吃盡苦頭之后才有一些心得體會(huì),長(zhǎng)進(jìn)極慢,我就是一例。我因此有幸和國產(chǎn)大型 IT 企業(yè)如華為、上海貝爾、中興等公司的同志們廣泛交流。我精神抖擻地進(jìn)“考場(chǎng)” ,大汗淋漓地出“考場(chǎng)” 。他讓我寫函數(shù) strcpy 的代碼。我目瞪口呆地意識(shí)到這套軟件毫無實(shí)用價(jià)值,一年的心血白化了,并且害死了自己的軟件公司。羅列出這些“業(yè)績(jī)” ,可以說明我算得上是編程高手了吧?可惜這種個(gè)人感覺不等于事實(shí)。我從讀大學(xué)到博士畢業(yè)十年來一直勤奮好學(xué),累計(jì)編寫了數(shù)十萬行 C++/C 代碼?!邆渖鲜鎏卣髟蕉啵斤@得水平高,資格老。(7) 真正的程序員認(rèn)為自己比用戶更明白用戶需要什么。(3) 真正的程序員幾乎不寫代碼的注釋,如果注釋很難寫,它理所當(dāng)然也很難讀。請(qǐng)花一兩個(gè)小時(shí)認(rèn)真閱讀這本百頁經(jīng)書,你將會(huì)獲益匪淺,這是前面 N1 個(gè)讀者的建議。一、編程老手與高手的誤區(qū)自從計(jì)算機(jī)問世以來,程序設(shè)計(jì)就成了令人羨慕的職業(yè),程序員在受人寵愛之后容易發(fā)展成為毛病特多卻常能自我臭美的群體。(4) 真正的程序員不畫流程圖,原始人和文盲才會(huì)干這事。(8) 真正的程序員不接受團(tuán)隊(duì)開發(fā)的理念,除非他自己是頭頭。所以別奇怪,程序員的很多缺點(diǎn)竟然可以被當(dāng)作優(yōu)點(diǎn)來欣賞。有這樣的苦勞和疲勞,我應(yīng)該稱得上是編程老手了吧?我開發(fā)的軟件都與科研相關(guān)(集成電路 CAD 和 3D 圖形學(xué)領(lǐng)域) ,動(dòng)輒數(shù)萬行程序,技術(shù)復(fù)雜,難度頗高。讀博期間我曾用一年時(shí)間開發(fā)了一個(gè)近 10 萬行 C++代碼的 3D 圖形軟件產(chǎn)品,我內(nèi)心得意表面謙虛地向一位真正的軟件高手請(qǐng)教。人的頓悟通常發(fā)生在最心痛的時(shí)刻,在沮喪和心痛之后,我作了深刻反省, “面壁”半年,重新溫習(xí)軟件設(shè)計(jì)的基礎(chǔ)知識(shí)。太容易了吧?錯(cuò)!這么一個(gè)小不點(diǎn)的函數(shù),他從三個(gè)方面考查:(1)編程風(fēng)格;(2)出錯(cuò)處理;(3)算法復(fù)雜度分析(用于提高性能) 。這“高手”當(dāng)?shù)靡蔡C囊了。大家認(rèn)為提高質(zhì)量與生產(chǎn)率是軟件工程要解決的核心問題。現(xiàn)在國內(nèi) IT 企業(yè)擁有學(xué)士、碩士、博士文憑的軟件開發(fā)人員比比皆是,但他們?cè)诮邮艽髮W(xué)教育時(shí)就“先天不足” ,豈能一到企業(yè)就突然實(shí)現(xiàn)質(zhì)的飛躍。我到上海貝爾工作一年來,陸續(xù)面試或測(cè)試過近百名“新” “老”程序員的編程技能,質(zhì)量合格率大約是 10%。我問大家試題難不難?所有的人都回答不難。要知道華為、上海貝爾、中興等公司的員工素質(zhì)在國內(nèi) IT 企業(yè)中是比較前列的,倘若他們的編程質(zhì)量都如此差的話,我們?cè)趺锤移谕行」灸贸龈哔|(zhì)量的軟件呢?連程序都編不好,還談什么振興民族軟件產(chǎn)業(yè),豈不胡扯。根據(jù)上述定義,馬上得到第一推論:我既不是高手也算不上是老手。9 / 101二、本書導(dǎo)讀首先請(qǐng)做附錄 B 的 C++/C 試題(不要看答案) ,考查自己的編程質(zhì)量究竟如何。成績(jī)?cè)讲?,可以進(jìn)步的空間就越大,中國不就是在落后中趕超發(fā)達(dá)資本主義國家嗎?只要你能下決心改掉不良的編程習(xí)慣,第二次考試就能及格了。希望你能和我們多多交流、相互促進(jìn)。本書第一章至第六章主要論述 C++/C 編程風(fēng)格。團(tuán)隊(duì)開發(fā)講究風(fēng)格一致,如果制定了大家認(rèn)可的編程風(fēng)格,那么所有組員都要遵守。第七章至第十一章是專題論述,技術(shù)難度比較高,看書時(shí)要積極思考。光看本書對(duì)提高編程質(zhì)量是有限的,建議大家閱讀本書的參考文獻(xiàn),那些都是經(jīng)典名著。10 / 101三、版權(quán)聲明本書的大部分內(nèi)容取材于作者一年前的書籍手稿(尚未出版) ,現(xiàn)整理匯編成為上海貝爾網(wǎng)絡(luò)應(yīng)用事業(yè)部的一個(gè)規(guī)范化文件,同時(shí)作為培訓(xùn)教材。版權(quán)聲明如下:(1)讀者可以任意拷貝、修改本書的內(nèi)容,但不可以篡改作者及所屬單位。屆時(shí),包括本書在內(nèi)的約 1000 頁規(guī)范將嚴(yán)格受控。另一個(gè)文件用于保存程序的實(shí)現(xiàn)(implementation) ,稱為定義(definition)文件。(3)當(dāng)前版本號(hào),作者/修改者,完成日期。(3)函數(shù)和類結(jié)構(gòu)聲明等。? 【規(guī)則 123】用 include “” 格式來引用非標(biāo)準(zhǔn)庫的頭文件(編譯器將從用戶的工作目錄開始搜索) 。? 【建議 122】不提倡使用全局變量,盡量不要在頭文件中出現(xiàn)象 extern int value 這類聲明。endif示例 12 C++/C 頭文件的結(jié)構(gòu)13 / 101 定義文件的結(jié)構(gòu)定義文件有三部分內(nèi)容:(1) 定義文件開頭處的版權(quán)和版本聲明(參見示例 11) 。// 版權(quán)和版本聲明見示例 11,此處省略。用戶只需要按照頭文件中的接口聲明來調(diào)用庫功能,而不必關(guān)心接口怎么實(shí)現(xiàn)的。14 / 101 目錄結(jié)構(gòu)如果一個(gè)軟件的頭文件數(shù)目比較多(如超過十個(gè)) ,通常應(yīng)將頭文件和定義文件分別保存于不同的目錄,以便于維護(hù)。15 / 101第 2 章 程序的版式版式雖然不會(huì)影響程序的功能,但會(huì)影響可讀性。差的程序“書法”如螃蟹爬行,讓人看得索然無味,更令維護(hù)者煩惱有加。空行不會(huì)浪費(fèi)內(nèi)存,雖然打印含有空行的程序
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1