原创 重構之22種代碼的壞味道

概述: 在編寫代碼時,隨着代碼量的增加,會時不時的需要重構來提高代碼的質量。以下是22中代碼的壞味道,如果你的代碼中也有這些,那快快來按照這些方法重構你的代碼吧! 1.Duplicated Code(重複的代碼)   --->難維護  

原创 圖片與二進制數據的轉換

概述: 最近在做項目時,遇到要把圖片文件轉換成二進制數據,然後將數據儲存,再讀出來,最後顯示圖片, 後期的儲存和再次讀取都沒有什麼問題,最大的問題是要確保將圖片轉換成二進制的數據正確,否則後面 的操作就會出錯變得沒有意義。所以做了以下的例

原创 轉 C++ 標準庫 vector list map使用方法

1.List List將元素按順序儲存在鏈表中. 與 向量(vectors)相比, 它允許快速的插入和刪除,但是隨機訪問卻比較慢. list對象函數 assign() 給list賦值 back() 返回最後一個元素 begin() 返回指

原创 標準C++中string類的用法總結

概述: 相信使用過MFC編程的朋友對CString這個類的印象應該非常深刻吧?的確,MFC中的CString類使用起來真的非常的方便好用。但是如果離開了MFC框架,還有沒有這樣使用起來非常方便的類呢?答案是肯定的。也許有人會說,即使不

原创 一款C++靜態分析工具 —— CppDepend

Wrote by mutouyun. (http://darkc.at/cppdepend/)   去年6月份的時候,CppDepend的一位技術社區經理(technical community manager)突然發郵件聯繫我

原创 Qt事件分析

概括: Qt程序是事件驅動的, 程序的每個動作都是由幕後某個事件所觸發.。 Qt事件的發生和處理成爲程序運行的主線,存在於程序整個生命週期。 Qt事件的類型很多, 常見的qt的事件如下: 鍵盤事件: 按鍵按下和鬆開. 鼠標事件: 鼠標移

原创 Qt控件簡單介紹

概述: Qt可分爲QCheckBox、QPushButton、和QListView、QCalendarWidget等基礎控件,QPushButtonGroup、QCroupBox等同屬性的組合控件,以及抽象控件三大類。下來來大致介紹下

原创 QSS基礎知識學習

這幾天學習了下QSS空間的美化,以下是一些基礎知識的總結! 建議QSS的使用步驟:先在Designer裏面寫QSS,能實時的看到效果,滿意後寫到qss文件中 從文件中讀取QSS複製給QString然後應用程序設置樣式表,例如: QFi

原创 Qt國際化方法與國際化不完全問題小結

概述       最近自己在做項目的時候,由於需要跨平臺,防止代碼亂碼,需要把項目中那些中文字都用英文代替,然後翻譯成需要的語言。但是在我按照Qt國際化的步驟後,總是有的漢化成功了,有的卻沒有成功,因此小結一下。 QT國際化的步驟: 1

原创 Qt中自定義MessageBox提示框

概述: 在做項目時,我們經常會用到QMessageBox這個控件,但有時候Qt自己提供的不能 滿足我們項目的需求,於是打算用自己定義的MessageBox。下面是自己定義的一個 消息提示框的控件類,有什麼不對的地方,希望大家一起交流! 頭

原创 Qt中斷言的使用

       錯誤的處理常用來檢查有害的輸入數據,斷言用來檢查代碼的的bug,Qt中提供了兩個斷言的宏Q_ASSERT()和Q_ASSERT_X().下面簡單講述下兩個宏的使用: 1. Q_ASSERT(bool) 例如: // File

原创 lua學習筆記(一) :第一個Lua程序及Lua中的關鍵字

概述:     由於公司需要做lua項目,需要本人學習lua語言。對於之前一直做qt我來說,零基礎學習,所以記錄這些學習中的筆記,以便以後複習和交流。 lua介紹:        Lua是一個小巧的腳本語言,其設計目的是爲了嵌入應用程序中

原创 多態、策略模式和簡單工廠模式的理解

        最近在看設計模式一本書,發現策略模式和簡單工廠模式很像,剛剛開始我還以爲是一樣的,總感覺沒什麼區別,後來纔看明白,有一點點個人的理解,記錄下來,方便下次複習以及理解。 概念理解: 多態:C++的多態性用一句話概括就是,在

原创 Lua學習筆記(二):Lua中的類型介紹

概述:     Lua是一種動態類型的語言,在語言中沒有類型定義的語法,每個值都“攜帶”了他自身的類型信息,我們可以用 type()函數來檢查起類型。          lua支持的類型:lua總共支持八種類型,分別是: nil(空)

原创 Lua 中元表及元表方法學習

今天花了一些時間學習了Lua元表與元表方法,這裏做個筆記,方便下次理解查看   引言:Lua中的每個值都有一套預定義的操作集合,如數字相加等。但無法將兩個table相加,此時可通過元表修改一個值的行爲,使其在面對一個非預定義的操作時執行一