Time of Update: 2018-12-07
類之中有一個數實值型別碼,但它並不影響類的行為。以一個新的類替換該數實值型別碼。動機:在以C為基礎的程式設計語言中,類型碼或枚舉值很常見。如果帶著一個有意義的符號名,類型碼的可讀性還不錯。問題在於,符號名終究只是個別名,編譯器看見的、進行類型檢驗的,還是背後那個數值。任何接受類型碼作為參數的函數,所期望的實際上是一個數值,無法強制使用符號名。這會大大降低代碼的可讀性,從而成為bug之源。
Time of Update: 2018-12-07
某個類做了應該由2個類做的事。建立一個新類,將相關的欄位和函數從舊類搬移到新類。動機:一個類應該是一個清楚地抽象,處理一些明確的責任。但是在實際工作中,類會不斷成長擴充。你會在這兒加入一些功能,在哪加入一些資料。給某個類添加一項新責任時,你會覺得不值得為這項責任分離出一個單獨的類。於是,隨著責任不斷增加,這個類會變得過分複雜。很快,你的類就會變成一團亂麻。這樣的類往往含有大量函數和資料。這樣的類往往太大而不易理解。此時你需要考慮哪些部分可以分離出去,並將它們分離到一個單獨的類中。如果某些資料和
Time of Update: 2018-12-07
你有一個複雜的條件陳述式。從if、then、else三個段落中分別提煉出獨立函數。動機:程式之中,複雜的條件邏輯是最常導致複雜度上升的地點之一。你必須編寫代碼來檢查不同的條件分支、根據不同的分支做不同的事,然後,你很快就會得到一個相當長的函數。大型函數自身就會使代碼的可讀性下降,而條件邏輯則會使代碼更難閱讀。在帶有複雜條件邏輯的函數中,代碼(包括檢查條件分支的代碼和真正實現功能的代碼)會告訴你發生的事,當常常讓你弄不清為什麼會發生這樣的事,這就說明代碼的可讀性的確大大降低了。
Time of Update: 2018-12-07
js實現 點擊元素以外的地方隱藏
Time of Update: 2018-12-07
刪除案頭IE表徵圖:請點擊開始,運行,輸入regedit,開啟登錄編輯程式 然後找到下面的項刪除,最後的項名稱不一定是一樣,注意該項資料是Internet Explorer,如果還有其他瀏覽器被改,找到對應項刪除即可
Time of Update: 2018-12-07
設定一個widget的背景圖片/顏色,我們可以使用調色盤QPalette,而設定最重要的就是setBrush()畫刷。剛google搜尋了一下,發現用setBrush基本都只用了它的一種方法,但實際上其有兩種用法。 QPalette palette; 用法一:palette.setBrush(QPalette::Base,
Time of Update: 2018-12-07
網頁的緩衝是由HTTP訊息頭中的“Cache-control”來控制的,常見的取值有private、no-cache、max-age、must-revalidate等,預設為private。其作用根據不同的重新瀏覽方式分為以下幾種情況:(1) 開啟新視窗值為private、no-cache、must-revalidate,那麼開啟新視窗訪問時都會重新訪問伺服器。而如果指定了max-age值,那麼在此值內的時間裡就不會重新訪問伺服器,例如:Cache-control:
Time of Update: 2018-12-07
2個類之間有雙向關聯,但其中一個類如今不再需要另一個類的特性。去除不必要的關聯。動機:雙向關聯很有用,但你必須為它付出代價,那就是維護雙向串連、確保對象被正確建立和刪除而增加的複雜度。而且,由於很多程式員並不習慣使用雙向關聯,它往往成為錯誤之源。 大量的雙向串連也很容易造成“殭屍對象”:某個對象本來應該死亡了,卻仍然保留在系統中,因為對它的引用沒有完全清除。
Time of Update: 2018-12-07
轉自:http://linux.chinaitlab.com/command/764778.html top命令是Linux下常用的效能分析工具,能夠即時顯示系統中各個進程的資源佔用狀況,類似於Windows的工作管理員。下面詳細介紹它的使用方法。 top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48Tasks: 29 total, 1 running, 28 sleeping, 0 stopped,
Time of Update: 2018-12-07
思維主要是2方面。1個是紀律,另一個是團體 這個紀律不單單是遵守公司的紀律,隨著公司的增大,能否適應公司的各種規則,是一個人的
Time of Update: 2018-12-07
本文將為你介紹10個新鮮出爐的JQuery外掛程式,在你的項目中使用它們吧! 1.bxSlider 該外掛程式是內容滑塊和映像投影片,可支援橫向、縱向和漸層過渡切換。支援導航控制和自訂。(線上示範) 2.Awkward Showcase 使用此外掛程式,可以在任何內容之間自由切換(內容滑塊)。允許在投影片中植入任何內容:文本、圖片、視頻、提示等,同時允許使用縮圖等。(線上示範) 3.Waypoints 當滾動至目標元素時,可輕鬆執行相對應的必要操作。(線上示範) 4.jsMovie
Time of Update: 2018-12-07
自從google的伺服器搬離中國大陸後,大陸地區使用者用google服務時會自動跳轉到香港的google.com.hk,有關鍵字過濾而且偶爾不是很穩定,這對我們的生活工作都造成了困擾。大家可以通過以下的方法訪問google.com直接用www.google.com/ncr,ncr是no country redirection,是一個強制不跳轉的命令;用https://www.google.com/,https協議。另外一個問題是Chrome瀏覽器的預設搜尋也是設定為www.google.com.
Time of Update: 2018-12-07
我的archlinux下安裝了 xorg和 xfce4 ,IME卻怎麼也沒安裝上.安裝了 fxitx 小企鵝拼音IME 但是始終無法調用出來這個拼音IME.還安裝了其他的,可能配置起來都很難吧.最後還是用了iBus,提示很友好,而且可以調用出來了.安裝iBus:yaourt -S ibus ibus-pinyin開啟ibus進行ibus設定,添加中文IME.然後按ctrl+shift就可以調用拼音IME了.不過中文字型很難看.安裝下一些字型就可以了.以後運行 ibus-daemon &
Time of Update: 2018-12-07
視頻與映像RGB/YUV格式詳解(轉)電腦彩色顯示器顯示色彩的原理與彩色電視機一樣,都是採用R(Red)G(Green)B(Blue)相加混色的原理:通過發射出三種不同強度的電子束,使螢幕內側覆蓋的紅綠藍磷光材料發光而產生色彩這種色彩的表示方法稱為RGB色彩空間表示(它也是多媒體電腦技術中用得最多的一種色彩空間表示方法)根據三基色原理,任意一種色光F都可以用不同分量的RGB三色相加混合而成F = r [ R ] + g [ G ] + b [ B ]其中,rgb分別為三基色參與混合的係數當三基色
Time of Update: 2018-12-07
問題如下:1.中文顯示亂碼2.資料庫連接不上問題一:但是如果我們的軟體只運行在中文系統下,最簡單的方法:在main函數中調用QTextCodec::setCodecForTr( QTextCodec::codecForName("GBK") );就可以了。記得這句要在所有使用tr的語句前調用。以後在需要使用中文的地方使用tr("中文字元");就可以了。但事情真的這麼簡單嗎?當我將一個測試程式拷貝到一台沒裝過Qt的電腦上時,tr中的字都顯示不了了。奇怪的是用Creater
Time of Update: 2018-12-07
ZooKeeper安裝1下載解壓cd /usr/local/srcwget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gztar zxvf zookeeper-3.4.5.tar.gz2配置cd zookeeper-3.4.5cp conf/zoo_sample.cfg conf/zoo.cfg export
Time of Update: 2018-12-07
我們在做socket的開發的時候,經常會遇到這個錯誤:通常每個通訊端地址
Time of Update: 2018-12-07
關於該風格要注意幾點的是:WS_EX_CLIENTEDGE視窗風格並不是對所有視窗都有效,只有視窗有客戶區的時候才有效,這樣當它用在比如button,combox,tab無客戶區的控制項時,它是無效的。通過對話方塊模版建立的控制項ListCtrl,如果你指定了WS_BORDER,這時WS_BORDER將被拿掉,而WS_EX_CLIENTEDGE會被設定上。但是如果你通過create手動建立則不會出現這種情況。當WS_EX_CLIENTEDGE設定上,在控制項邊緣和客戶區之間將有2個像素大小的空隙
Time of Update: 2018-12-07
題目:給定一個十進位正整數N,寫下從1開始到N的所有整數,數一下其中出現所有1的個數。 例如N=12,寫下1,2,3,4,。。。,12,1的個數為5。問題一寫出函數f(N),表示對於給定的N,計算1到N之間的”1″的個數。 解法一 最直接的解法:從1遍曆到N,將其每一個數中含有”1″的個數加起來。 此方法複雜度太高,為O(nlogn)。每個數計算此數的每一個位的數。 解法二 此方法是《編程之美》給的解法。 計算每一位的出現1的個數,如2345,分別計算千位、百位、十位、個位上可能出現1的個數。
Time of Update: 2018-12-07
格式 : * * * * * command 分 時 日 月 周 命令 第1列表示分鐘1~59 每分鐘用*或者 */1表示 第2列表示小時1~23(0表示0點) 第3列表示日期1~31 第4列表示月份1~12 第5列標識號星期0~6(0表示星期天) 第6列要啟動並執行命令 crontab檔案的一些例子: 30 21 * * * /usr/local/etc/rc.d/lighttpd restart 上面的例子表示每晚的21:30重啟apache。 45 4 1,10,22 * *