推薦一本書 高質量c c程式設計指南

2021-06-13 16:28:48 字數 900 閱讀 1381

計算機視覺(模式識別,影象處理)這個行業,從本質上來說,依然屬於it領域。個人認為,乙個合格的計算機視覺演算法工程師,不僅要熟悉各種常用的視覺分析、模式識別、機器學習演算法,更好懂得如何程式設計來實現這些演算法;換而言之,計算機視覺演算法工程師 = 演算法工程師 + 程式設計師;乙個合格的計算機視覺演算法工程師,如果不想從事演算法研究工作,而只做程式設計的工作,應該很容易;但實際上,很多計算機視覺演算法工程師寫的**,往往漏洞百出,健壯性不夠,穩定性也很差,更別談什麼長期穩定高效的執行了;那些**,往往執行3,5個小時,不是崩潰,就是記憶體洩露,或者乾脆莫名其妙的直接掛掉了;其實,很多時候,不是你的程式不對,或者邏輯有問題,問題很可能在於你的程式設計並不規範,你的**健壯性並不好。這裡,筆者試著舉幾個例子來說明:

(1)不判斷除數是否為0;

int ia,ib,ic;

....

ic = ia/ib;(當ib==0時,這裡可能會崩潰的!)

(2)浮點數跟0比較大小;

float fval;

...if(fval == 0)(浮點數在計算機裡面,不見得是儲存為0的)

(3)變數取名不規範

int temp, t,s,ou;(哪位大仙能看懂這些變數的含義?)

(4)不判斷函式返回值

iplimage* psrcimg = cvloadimage("test.jpg");(psrcimg是否載入成功?)

cvcvtcolor(psrcimg, pgrayimg);

well,上面的幾個錯誤,是筆者曾經犯過的,也是筆者經常見到周圍人正在犯的;這些錯誤,可能你會覺得不屑一顧,但往往在某些關鍵時刻,程式就是莫名其妙的掛掉,任憑你抓耳撓腮,就是搞不定!當你第一次遇到這些情況,情有可原;遇到第二次,是你不小心;第三次呢?第n次?你是否該思考一下,為何你的**總是愛出問題,是不是要改變你那不良的程式設計習慣了呢?

一本好書 高質量C C程式設計指南

目錄 前 言.6 第 1 章 檔案結構 11 1.1 版權和版本的宣告 11 1.2 標頭檔案的結構 12 1.3 定義檔案的結構 13 1.4 標頭檔案的作用 13 1.5 目錄結構 14 第 2 章 程式的版式 15 2.1 空行 15 2.2 行 16 2.3 行內的空格 17 2.4 對齊 ...

推薦一本書 《如何閱讀一本書》

讀書是一門藝術 多馬 正是秉持著這一 自由教育 的理念,阿德勒在他最著名的作品 如何閱讀一本書 獲得自由教育的技藝 how to read a book the art of getting a liberal education 進行了最充分的闡釋。我手上的這本商務印書館出版的中譯本 郝明義 朱衣...

高質量C C程式設計指南

1.如果引數是指標,且僅作輸入用,則應在型別前加const,以防止該指標在函式體內被意外修改 2.在函式體的 入口處 對引數的有效性進行檢查 在函式體的 出口處 對return語句的正確性和效率進行檢查 3.引用的一些規則如下 1 引用被建立的同時必須被初始化 指標則可以在任何時候被初始化 2 不能...