• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Shuffy

            不斷的學(xué)習(xí),不斷的思考,才能不斷的進(jìn)步.Let's do better together!
            posts - 102, comments - 43, trackbacks - 0, articles - 19

            VC++/C/C++/C#瀏覽集合

            本類里基本上都是我從網(wǎng)上查閱得到的一些東西~,感覺(jué)比較有價(jià)值就轉(zhuǎn)載過(guò)來(lái),讓大家共同學(xué)習(xí)!
                 摘要: 虛函數(shù)、純虛函數(shù)、虛基類、抽象類、虛函數(shù)繼承、虛繼承  閱讀全文

            posted @ 2011-09-25 10:11 Shuffy 閱讀(1382) | 評(píng)論 (0)  編輯 |

                 摘要: 內(nèi)存區(qū)域可以分為棧,堆,靜態(tài)存儲(chǔ)區(qū)和常量存儲(chǔ)區(qū)。局部變量,函數(shù)形參,臨時(shí)變量都是在棧上獲得內(nèi)存的,它們獲取的方式都是由編譯器自動(dòng)執(zhí)行的。

            C 標(biāo)準(zhǔn)函數(shù)庫(kù)提供了許多函數(shù)來(lái)實(shí)現(xiàn)對(duì)堆上內(nèi)存管理,其中包括:malloc函數(shù),free函數(shù),calloc函數(shù)和realloc函數(shù)。使用這些函數(shù)需要包含頭文件stdlib.h  閱讀全文

            posted @ 2011-09-14 13:44 Shuffy 閱讀(27853) | 評(píng)論 (1)  編輯 |

                 摘要: 用.net進(jìn)行語(yǔ)義網(wǎng)編程時(shí),有jena.net、OWL Library for .net、c# parser、RDF Library for .net等類庫(kù)可以使用,但本人在使用這些類庫(kù)時(shí)總是感覺(jué)不順手,尤其在推理的時(shí)候很麻煩。  閱讀全文

            posted @ 2011-03-25 21:54 Shuffy 閱讀(950) | 評(píng)論 (0)  編輯 |

                 摘要: C#關(guān)鍵字的用法不單只有一種方法的。現(xiàn)在我總結(jié)了一下Using和New的用法,順便鞏固下自己的知識(shí)。
            Using  閱讀全文

            posted @ 2009-07-06 01:03 Shuffy 閱讀(580) | 評(píng)論 (0)  編輯 |

                 摘要: 如果在為方法聲明參數(shù)時(shí)未使用 ref 或 out,則該參數(shù)可以具有關(guān)聯(lián)的值。可以在方法中更改該值,但當(dāng)控制傳遞回調(diào)用過(guò)程時(shí),不會(huì)保留更改的值。通過(guò)使用方法參數(shù)關(guān)鍵字,可以更改這種行為。  閱讀全文

            posted @ 2009-06-18 21:39 Shuffy 閱讀(565) | 評(píng)論 (0)  編輯 |

                 摘要: big endian是指低地址存放最高有效字節(jié)(MSB),而little endian則是低地址存放最低有效字節(jié)(LSB)。  閱讀全文

            posted @ 2008-12-22 14:01 Shuffy 閱讀(5385) | 評(píng)論 (0)  編輯 |

                 摘要: 銘記在心

            l 接口繼承與實(shí)現(xiàn)繼承存在著不同。在公共繼承體系下,派生類總是繼承基類的接口。

            l 純虛函數(shù)要求派生類僅繼承接口。

            l 簡(jiǎn)單(非純)虛函數(shù)要求派生類在繼承接口的同時(shí)繼承默認(rèn)的實(shí)現(xiàn)。

            l 非虛函數(shù)要求派生類繼承接口和強(qiáng)制內(nèi)容的實(shí)現(xiàn)。
              閱讀全文

            posted @ 2008-10-13 15:13 Shuffy 閱讀(428) | 評(píng)論 (0)  編輯 |

                 摘要: 銘記在心

            l 派生類中的名字會(huì)將基類中的名字隱藏起來(lái)。在公有繼承體系下,這是我們所不希望見(jiàn)到的。

            l 為了讓被隱藏名字再次可見(jiàn),可以使 用 using 聲明或者 轉(zhuǎn)發(fā)函數(shù)。
              閱讀全文

            posted @ 2008-10-13 15:05 Shuffy 閱讀(410) | 評(píng)論 (0)  編輯 |

                 摘要: 銘記在心

            l 公共繼承意味著 “A 是一個(gè) B” 的關(guān)系。對(duì)于基類成立的一切都應(yīng)該適用于派生類,因?yàn)榕缮惖膶?duì)象就是一個(gè)基類對(duì)象。
              閱讀全文

            posted @ 2008-10-13 15:02 Shuffy 閱讀(489) | 評(píng)論 (0)  編輯 |

                 摘要: 銘記在心

            l 最小化編譯依賴的基本理念就是使用聲明依賴代替定義依賴。基于這一理念有兩種實(shí)現(xiàn)方式,它們是:句柄類和接口類。

            l 庫(kù)頭文件必須以完整、并且僅存在聲明的形式出現(xiàn)。無(wú)論是否涉及模板。
              閱讀全文

            posted @ 2008-01-29 19:40 Shuffy 閱讀(503) | 評(píng)論 (0)  編輯 |

                 摘要: 銘記在心

            l 僅僅對(duì)小型的、調(diào)用頻率高的程序進(jìn)行內(nèi)聯(lián)。這將簡(jiǎn)化你的調(diào)試操作,為底層更新提供方便,降低潛在的代碼膨脹發(fā)生的可能,并且可以讓程序獲得更高的速度。

            l 不要將模板聲明為 inline 的,因?yàn)樗鼈円话阍陬^文件中出現(xiàn)。
              閱讀全文

            posted @ 2008-01-29 19:36 Shuffy 閱讀(341) | 評(píng)論 (0)  編輯 |

                 摘要: define用法  閱讀全文

            posted @ 2008-01-23 18:32 Shuffy 閱讀(1991) | 評(píng)論 (1)  編輯 |

                 摘要: c++中的string常用函數(shù)用法  閱讀全文

            posted @ 2008-01-20 14:02 Shuffy 閱讀(7742) | 評(píng)論 (1)  編輯 |

                 摘要: C++ 語(yǔ)言是個(gè)十分優(yōu)秀的語(yǔ)言,但優(yōu)秀并不表示完美。還是有許多人不愿意使用C或者C++,為什么?原因眾多,其中之一就是C/C++的文本處理功能太麻煩,用起來(lái)很不方便。以前沒(méi)有接觸過(guò)其他語(yǔ)言時(shí),每當(dāng)別人這么說(shuō),我總是不屑一顧,認(rèn)為他們根本就沒(méi)有領(lǐng)會(huì)C++的精華,或者不太懂C++,現(xiàn)在我接觸perl, php, 和Shell腳本以后,開(kāi)始理解了以前為什么有人說(shuō)C++文本處理不方便了。   閱讀全文

            posted @ 2008-01-20 13:37 Shuffy 閱讀(5276) | 評(píng)論 (0)  編輯 |

                 摘要: 一、程序風(fēng)格:
            1、嚴(yán)格采用階梯層次組織程序代碼:
            各層次縮進(jìn)的分格采用VC的缺省風(fēng)格,即每層次縮進(jìn)為4格,括號(hào)位于下一行。要求相匹配的大括號(hào)在同一列,對(duì)繼行則要求再縮進(jìn)4格。  閱讀全文

            posted @ 2007-11-19 12:44 Shuffy 閱讀(704) | 評(píng)論 (0)  編輯 |

                 摘要: 問(wèn)題1:UpdateData()的使用方法

            UpdateData()只有一個(gè)BOOL類型的參數(shù),UpdateData(FALSE)一般用于對(duì)話框控件連接的變量值刷新屏幕顯示;比如你在一個(gè)文本框上綁定了一個(gè)m_member變量,用UpdateData(FALSE);即可把這個(gè)值在文本框里顯示出來(lái),反之,UpdateData(TRUE);能把填入文本框的 內(nèi)容賦值給m_member.
              閱讀全文

            posted @ 2007-11-18 16:53 Shuffy 閱讀(240) | 評(píng)論 (0)  編輯 |

                 摘要: 銘記在心

            l 異常安全的函數(shù)即使在異常拋出時(shí),也不會(huì)帶來(lái)資源泄露,同時(shí)也不允許數(shù)據(jù)結(jié)構(gòu)遭到破壞。這類函數(shù)提供基本的、增強(qiáng)的、零異常的三個(gè)層面的異常安全保證。

            l 增強(qiáng)保證可以通過(guò)復(fù)制并交換策略來(lái)實(shí)現(xiàn),但是增強(qiáng)保證并不是對(duì)所有函數(shù)都適用。

            l 函數(shù)所提供的異常安全保證通常不要強(qiáng)于其調(diào)用的函數(shù)中保證層次最弱的一個(gè)。
              閱讀全文

            posted @ 2007-11-16 19:01 Shuffy 閱讀(271) | 評(píng)論 (0)  編輯 |

                 摘要: 銘記在心

            l 避免返回指向?qū)ο髢?nèi)部部件的句柄(引用、指針或迭代器)。這樣做可以增強(qiáng)封裝性,幫助 const 成員函數(shù)擁有更加“ const ”的行為,并且使“野句柄”出現(xiàn)的幾率降至最低。
              閱讀全文

            posted @ 2007-11-16 18:58 Shuffy 閱讀(287) | 評(píng)論 (0)  編輯 |

                 摘要: l 盡可能避免使用轉(zhuǎn)型,尤其是在對(duì)性能敏感的代碼中不要使用動(dòng)態(tài)轉(zhuǎn)型 dynamic_cast 。如果一個(gè)設(shè)計(jì)方案需要使用轉(zhuǎn)型,要嘗試尋求一條不需要轉(zhuǎn)型的方案來(lái)取代。

            l 在必須使用轉(zhuǎn)型時(shí),要嘗試將其隱藏在一個(gè)函數(shù)中。這樣客戶端程序員就可以調(diào)用這些函數(shù),而不是在他們自己的代碼中使用轉(zhuǎn)型。

            l 要盡量使用 C++ 風(fēng)格的轉(zhuǎn)型,避免使用懷舊風(fēng)格的轉(zhuǎn)型。現(xiàn)代的轉(zhuǎn)型更易讀,而且功能更為具體化。
              閱讀全文

            posted @ 2007-11-16 18:56 Shuffy 閱讀(353) | 評(píng)論 (0)  編輯 |

                 摘要: Windows應(yīng)用程序通過(guò)為指定設(shè)備(屏幕,打印機(jī)等)創(chuàng)建一個(gè)設(shè)備描述表(Device Context, DC)在DC表示的邏輯意義的“畫(huà)布”上進(jìn)行圖形的繪制。DC是一種包含設(shè)備信息的數(shù)據(jù)結(jié)構(gòu),它包含了物理設(shè)備所需的各種狀態(tài)信息。Win32程序在繪制圖形之前需要獲取DC的句柄HDC,并在不繼續(xù)使用時(shí)釋放掉。  閱讀全文

            posted @ 2007-11-16 18:50 Shuffy 閱讀(2640) | 評(píng)論 (0)  編輯 |

                 摘要: Windows和MFC的include文件都非常大,即使有一個(gè)快速的處理程序,編譯程序也要花費(fèi)相當(dāng)長(zhǎng)的時(shí)間來(lái)完成工作。由于每個(gè).CPP文件都包含相同的include文件,為每個(gè).CPP文件都重復(fù)處理這些文件就顯得很傻了。
            為避免這種浪費(fèi),AppWizard和VisualC++編譯程序一起進(jìn)行工作  閱讀全文

            posted @ 2007-09-09 13:36 Shuffy 閱讀(4394) | 評(píng)論 (0)  編輯 |

                 摘要: 使用棧就象我們?nèi)ワ堭^里吃飯,只管點(diǎn)菜(發(fā)出申請(qǐng))、付錢(qián)、和吃(使用),吃飽了就走,不必理會(huì)切菜、洗菜等準(zhǔn)備工作和洗碗、刷鍋等掃尾工作,他的好處是快捷,但是自由度小。使用堆就象是自己動(dòng)手做喜歡吃的菜肴,比較麻煩,但是比較符合自己的口味,而且自由度大。  閱讀全文

            posted @ 2007-09-02 17:10 Shuffy 閱讀(322) | 評(píng)論 (0)  編輯 |

                 摘要: 銘記在心

            l 定義變量的時(shí)機(jī)越晚越好。這可以提高程序的清晰度和工作效率。
              閱讀全文

            posted @ 2007-09-02 16:04 Shuffy 閱讀(229) | 評(píng)論 (0)  編輯 |

                 摘要: 銘記在心

            l 在對(duì)你的類型使用 std::swap 時(shí)可能會(huì)造成效率低下時(shí),可以提供一個(gè) swap 成員函數(shù)。確保你的 swap 不要拋出異常。

            l 如果你提供了一個(gè) swap 的成員函數(shù),那么同時(shí)要提供一個(gè)非成員函數(shù) swap 來(lái)調(diào)用這一成員。對(duì)于類而言(而不是模板),還要提供一個(gè) std::swap 的特化版本來(lái)調(diào)用 swap 成員函數(shù)。

            l 在調(diào)用 swap 時(shí),要為 std::swap 使用一條 using 聲明,然后在調(diào)用 swap 時(shí),不要做出名字空間的限制。

            l 對(duì)用戶自定義類型而言,提供 std 的完全特化版本不成問(wèn)題,但是決不要嘗試在 std 中添加全新的內(nèi)容。
              閱讀全文

            posted @ 2007-09-02 15:57 Shuffy 閱讀(395) | 評(píng)論 (0)  編輯 |

                 摘要: 一、從控制臺(tái)讀取東西代碼片斷:
            using System;

            class TestReadConsole
            {
            public static void Main()
            {
            Console.Write("Enter your name:");
            string strName = Console.ReadLine();
            Console.WriteLine(" Hi "+ strName);
            }
            }  閱讀全文

            posted @ 2007-08-31 12:34 Shuffy 閱讀(222) | 評(píng)論 (0)  編輯 |

                 摘要: Mutable 數(shù)據(jù)成員的使用看上去像是騙術(shù),因?yàn)樗軌蚴?const 函數(shù)修改對(duì)象的數(shù)據(jù)成員。然而,明智地使用 mutable 關(guān)鍵字可以提高代碼質(zhì)量,因?yàn)樗軌蜃屇阆蛴脩綦[藏實(shí)現(xiàn)細(xì)節(jié),而無(wú)須使用不確定的東西  閱讀全文

            posted @ 2007-07-13 20:13 Shuffy 閱讀(495) | 評(píng)論 (0)  編輯 |

                 摘要: 在過(guò)去留下來(lái)的程序代碼和純粹的C程序中,傳統(tǒng)的形式的轉(zhuǎn)換伴隨了我們很長(zhǎng)的一段時(shí)間。但是,如文中所述,基于stringstream的轉(zhuǎn)換擁有類型安全和不會(huì)溢出這樣搶眼的特性,使我們有充足得理由拋棄而使用庫(kù)還提供了另外一個(gè)特性—可擴(kuò)展性。你可以通過(guò)重載來(lái)支持自定義類型間的轉(zhuǎn)換。  閱讀全文

            posted @ 2007-07-13 19:47 Shuffy 閱讀(191206) | 評(píng)論 (30)  編輯 |

                 摘要: l 如果你需要對(duì)一個(gè)函數(shù)的所有參數(shù)進(jìn)行類型轉(zhuǎn)換(包括 this 指針?biāo)赶虻膶?duì)象),那么它必須是一個(gè)非成員函數(shù)。
              閱讀全文

            posted @ 2007-07-13 19:04 Shuffy 閱讀(266) | 評(píng)論 (0)  編輯 |

                 摘要: 面向?qū)ο蟮幕驹硪髷?shù)據(jù)和對(duì)其進(jìn)行操作的函數(shù)應(yīng)該被包裝在一起,同時(shí)建議成員函數(shù)為更優(yōu)秀的選擇。但不幸的是,這一建議并不是正確的。它是建立在對(duì)“面向?qū)ο蟮臇|西意味著什么”這一點(diǎn)的誤解之上的。通過(guò)理性分析可以得知,成員函數(shù) clearEverything 的封裝性實(shí)際上比非成員函數(shù) clearBrowser 還要差。還有,非成員函數(shù)可以為 WebBrowser 相關(guān)的功能提供更便利的打包方法,從而減少編譯時(shí)依賴,提高 WebBrowser 的可擴(kuò)展性。很多情況下,非成員函數(shù)的方法都比成員函數(shù)的方法要好。理解這一結(jié)論的原因是十分重要的。  閱讀全文

            posted @ 2007-06-26 13:24 Shuffy 閱讀(253) | 評(píng)論 (0)  編輯 |

                 摘要: 好吧,直截了當(dāng)?shù)恼f(shuō),在這一條中:我們首先要分析為什么數(shù)據(jù)成員不應(yīng)該是公有的,與此同時(shí),繼續(xù)分析為什么數(shù)據(jù)成員也不能是 protected 的。然后就引出本條款的結(jié)論:數(shù)據(jù)成員必須是私有的。  閱讀全文

            posted @ 2007-06-26 13:20 Shuffy 閱讀(280) | 評(píng)論 (0)  編輯 |

                 摘要: 一旦程序員把注意力都轉(zhuǎn)向了對(duì)象傳值方式隱含的效率問(wèn)題(參見(jiàn)第 20 條)時(shí),許多人都變成了極端的“改革運(yùn)動(dòng)者”,他們對(duì)傳值方法采取斬草除根的態(tài)度,在他們不屈不撓追求傳遞引用方式的純粹性的同時(shí),他們也犯下了致命的錯(cuò)誤:有時(shí)候傳遞的引用所指向的對(duì)象并不存在。這決不是一件好事情。   閱讀全文

            posted @ 2007-06-26 13:17 Shuffy 閱讀(168) | 評(píng)論 (0)  編輯 |

                 摘要: 默認(rèn)情況下, C++ 為函數(shù)傳入和傳出對(duì)象是采用傳值方式的(這是由 C 語(yǔ)言繼承而來(lái)的特征)。除非你明確使用其他方法,函數(shù)的形式參數(shù)總會(huì)通過(guò)復(fù)制實(shí)在參數(shù)的副本來(lái)創(chuàng)建,并且,函數(shù)的調(diào)用者得到的也是函數(shù)返回值得一個(gè)副本。這些副本是由對(duì)象的拷貝構(gòu)造函數(shù)創(chuàng)建的。這使得“傳值”成為一項(xiàng)代價(jià)十分昂貴的操作。  閱讀全文

            posted @ 2007-06-26 13:14 Shuffy 閱讀(207) | 評(píng)論 (0)  編輯 |

                 摘要: 與其它的面向?qū)ο缶幊陶Z(yǔ)言類似,在 C++ 中,定義一個(gè)新的 class 便會(huì)引入一個(gè)新的類型的定義。一個(gè) C++ 設(shè)計(jì)人員的大多數(shù)時(shí)間都會(huì)用在不斷豐富充實(shí)他們的類系統(tǒng)上。這意味著他不僅僅是一個(gè) class 的設(shè)計(jì)者,而且是一個(gè)類型的設(shè)計(jì)者。  閱讀全文

            posted @ 2007-05-27 10:16 Shuffy 閱讀(178) | 評(píng)論 (0)  編輯 |

                 摘要: C++ 中到處充滿了接口。函數(shù)接口、類接口、模板接口,等等。每個(gè)接口都是實(shí)現(xiàn)客戶端程序員與你的代碼相交互的一種手段。假設(shè)你的客戶通情達(dá)理,他們的項(xiàng)目也十分優(yōu)秀,他們便會(huì)十分看重你的接口是否易于正確使用。這是千真萬(wàn)確的,如果他們誤用了你的接口中的任一個(gè),那么你也難推其咎。  閱讀全文

            posted @ 2007-05-27 10:14 Shuffy 閱讀(291) | 評(píng)論 (0)  編輯 |

                 摘要: l 在單獨(dú)的語(yǔ)句中使用智能指針來(lái)保存由 new 創(chuàng)建的對(duì)象。如果不這樣做,你的程序會(huì)在拋出異常時(shí)發(fā)生資源泄漏。
              閱讀全文

            posted @ 2007-05-27 10:09 Shuffy 閱讀(240) | 評(píng)論 (0)  編輯 |

                 摘要: l 如果你在一個(gè) new 語(yǔ)句中使用了 [] ,那么你必須要在相關(guān)的 delete 語(yǔ)句中使用 [] 。如果你在 new 語(yǔ)句中沒(méi)有使用 [] ,那么在相關(guān)的 delete 語(yǔ)句中一定不要出現(xiàn) [] 。  閱讀全文

            posted @ 2007-05-27 10:07 Shuffy 閱讀(274) | 評(píng)論 (0)  編輯 |

                 摘要: 資源管理類的特征是振奮人心的。它構(gòu)筑起可靠的屏障,有效地防止你的程序發(fā)生資源泄漏。對(duì)于一個(gè)系統(tǒng)的設(shè)計(jì)方案是否優(yōu)異,能否預(yù)防這樣的泄漏可作為一個(gè)基本評(píng)判標(biāo)準(zhǔn)。在完美的世界里,你可以依靠資源管理類來(lái)完成所有的與資源交互的工作,你永遠(yuǎn)也不能直接訪問(wèn)原始資源。  閱讀全文

            posted @ 2007-05-25 20:41 Shuffy 閱讀(199) | 評(píng)論 (0)  編輯 |

                 摘要: 并不是所有的資源都分配于堆上,對(duì)于不分配于堆上的資源,類似于 auto_ptr 和 tr1::shared_ptr 這一類的智能指針并不適合于處理它們。這是千真萬(wàn)確的,你必須不時(shí)地自己動(dòng)手,創(chuàng)建自己的資源管理類。
              閱讀全文

            posted @ 2007-05-12 10:48 Shuffy 閱讀(178) | 評(píng)論 (0)  編輯 |

                 摘要: 資源是這樣一種東西:一旦你借助它們所做的事情完成了,你必須要將其返回給系統(tǒng)。如果你沒(méi)有這樣做,那么不好的事情就會(huì)發(fā)生。在 C++ 程序中,最常用的資源是動(dòng)態(tài)分配的內(nèi)存(如果你分配了內(nèi)存但是卻忘記了釋放它們,你的程序就會(huì)遇到一次內(nèi)存泄漏),但是內(nèi)存只是你所需要管理的眾多資源中的一種。  閱讀全文

            posted @ 2007-05-12 10:42 Shuffy 閱讀(145) | 評(píng)論 (0)  編輯 |

                 摘要: 在一個(gè)設(shè)計(jì)良好的面向?qū)ο笙到y(tǒng)中,對(duì)象的所有內(nèi)在部分都會(huì)被封裝起來(lái),只有兩個(gè)函數(shù)是用來(lái)復(fù)制對(duì)象的:即所謂的拷貝構(gòu)造函數(shù)和拷貝賦值運(yùn)算符。我們將稱這些函數(shù)為拷貝函數(shù)。  閱讀全文

            posted @ 2007-05-05 21:59 Shuffy 閱讀(141) | 評(píng)論 (0)  編輯 |

                 摘要: 文件是一種信息存儲(chǔ)的方式,程序設(shè)計(jì)不可避免要進(jìn)行各種文件操作,一個(gè)程序在運(yùn)行過(guò)程中通常要從文件中讀取信息,在文件中存儲(chǔ)計(jì)算結(jié)果。  閱讀全文

            posted @ 2007-05-03 23:28 Shuffy 閱讀(1022) | 評(píng)論 (0)  編輯 |

                 摘要: getc():
            調(diào)用方式:int getc(FILE *stream)
            它返回指定輸入流stream的當(dāng)前位置的下一個(gè)字符,并增加文件的位置指示器.  閱讀全文

            posted @ 2007-05-03 23:18 Shuffy 閱讀(2050) | 評(píng)論 (3)  編輯 |

                 摘要: 當(dāng)對(duì)象對(duì)其自身賦值時(shí),就發(fā)生了一次“自賦值”:   閱讀全文

            posted @ 2007-05-02 15:42 Shuffy 閱讀(126) | 評(píng)論 (0)  編輯 |

                 摘要: 關(guān)于賦值有許多有趣的事情,其中之一就是:你可以把賦值操作連在一起:  閱讀全文

            posted @ 2007-04-29 20:17 Shuffy 閱讀(160) | 評(píng)論 (0)  編輯 |

                 摘要: 讓我們直切正題:在程序進(jìn)行構(gòu)造或析構(gòu)期間,你絕不能調(diào)用虛函數(shù),這是因?yàn)檫@樣的調(diào)用并不會(huì)按你所期望的執(zhí)行,即使能夠順利執(zhí)行,你也不會(huì)覺(jué)得十分 舒服。如果你曾經(jīng)是一個(gè) Java 或 C# 的程序員,并且在最近期望返回 C++ 的懷抱,那么請(qǐng)你格外的注意這一條,因?yàn)樵谶@一問(wèn)題上, C++ 與其他語(yǔ)言走的是完全不同的兩條路線。   閱讀全文

            posted @ 2007-04-29 20:14 Shuffy 閱讀(170) | 評(píng)論 (0)  編輯 |

                 摘要: 比如 我們有這樣一個(gè)C函數(shù)
            #include
            long test(int a,int b)
            {
            a = a + 1;
            b = b + 100;
            return a + b;
            }
            void main()
            {
            printf("%d",test(1000,2000));
            }  閱讀全文

            posted @ 2007-04-27 10:03 Shuffy 閱讀(264) | 評(píng)論 (0)  編輯 |

                 摘要: C++ 并 沒(méi)有禁止析構(gòu)函數(shù)引發(fā)異常,但 是 C++ 十 分不推薦這一做法。這樣做有充足的理由。請(qǐng)看下邊的代碼:  閱讀全文

            posted @ 2007-04-27 09:45 Shuffy 閱讀(257) | 評(píng)論 (0)  編輯 |

                 摘要: 許多客戶端程序員希望在訪問(wèn)時(shí)間的同時(shí),不用關(guān)心它是如何計(jì)算的,所以在此時(shí)可以使用一個(gè)工廠函數(shù)來(lái)返回一個(gè)指向計(jì)時(shí)器對(duì)象的指針,該函數(shù)返回的是一個(gè)基類指針,這個(gè)指針指向一個(gè)新創(chuàng)建的派生類對(duì)象:  閱讀全文

            posted @ 2007-04-22 10:53 Shuffy 閱讀(193) | 評(píng)論 (0)  編輯 |

                 摘要: 就像每一個(gè)房地產(chǎn)代理商能夠很快指出的,每一間住宅都是獨(dú)一無(wú)二的——沒(méi)有兩間是完全一樣的。既然如此,為一個(gè) HomeForSale 對(duì)象復(fù)制出一個(gè)副本的想法就顯得沒(méi)什么意義了。你怎么能夠復(fù)制那些生來(lái)就獨(dú)一無(wú)二的東西呢?如果你嘗試去復(fù)制一個(gè) HomeForSale 對(duì)象,那么編譯器則不應(yīng)該接受:   閱讀全文

            posted @ 2007-04-19 20:12 Shuffy 閱讀(215) | 評(píng)論 (0)  編輯 |

                 摘要: 什么時(shí)候一個(gè)空類在實(shí)際上并不是空類呢?我們說(shuō), 在 C++ 處理它的時(shí)候。對(duì)于一個(gè)類來(lái)說(shuō),如果你不自己手動(dòng)聲明一個(gè)復(fù)制構(gòu)造器、一個(gè)賦值運(yùn)算符、和一個(gè)析構(gòu)器,編譯器就會(huì)自動(dòng)為你聲明這些函數(shù)。而且,如果你根本沒(méi)有聲明構(gòu)造器的話,編譯器也將為你聲明一個(gè)默認(rèn)構(gòu)造器。所有這些函數(shù)將 是 public 的并且是 inline 的(參見(jiàn)第 30 條)。舉例說(shuō),如果你編寫(xiě)了:   閱讀全文

            posted @ 2007-04-18 12:49 Shuffy 閱讀(153) | 評(píng)論 (0)  編輯 |

                 摘要: 讀取未初始化的數(shù)據(jù)時(shí),程序?qū)⒊尸F(xiàn)出無(wú)法預(yù)知的行為。在一些語(yǔ)言平臺(tái)中,通常情況下讀取未初始化的數(shù)據(jù)將使你的程序無(wú)法運(yùn)行。更可能的情況時(shí),也許會(huì)得到內(nèi)存中某些位置上的半隨機(jī)的數(shù)據(jù),這些數(shù)據(jù)將會(huì)“污染”需要賦值的對(duì)象,最終,程序的行為將變得十分令人費(fèi)解,你也會(huì)陷入令人惱火的除錯(cuò)工作。   閱讀全文

            posted @ 2007-04-16 12:12 Shuffy 閱讀(289) | 評(píng)論 (3)  編輯 |

                 摘要: 一、sizeof的概念
            sizeof是C語(yǔ)言的一種單目操作符,如C語(yǔ)言的其他操作符++、--等。它并不是函數(shù)。sizeof操作符以字節(jié)形式給出了其操作數(shù)的存儲(chǔ)大小。操作數(shù)可以是一個(gè)表達(dá)式或括在括號(hào)內(nèi)的類型名。操作數(shù)的存儲(chǔ)大小由操作數(shù)的類型決定。  閱讀全文

            posted @ 2007-04-14 13:04 Shuffy 閱讀(364) | 評(píng)論 (3)  編輯 |

                 摘要: 接觸過(guò)編程的人都知道,高級(jí)語(yǔ)言都能通過(guò)變量名來(lái)訪問(wèn)內(nèi)存中的數(shù)據(jù)。那么這些變量在內(nèi)存中是如何存放的呢?程序又是如何使用這些變量的呢?下面就會(huì)對(duì)此進(jìn)行深入的討論。下文中的C語(yǔ)言代碼如沒(méi)有特別聲明,默認(rèn)都使用VC編譯的release版。  閱讀全文

            posted @ 2007-04-13 22:49 Shuffy 閱讀(131) | 評(píng)論 (0)  編輯 |

                 摘要: 首先說(shuō)明一下什么是Heap Corruption。當(dāng)輸入超出了預(yù)分配的空間大小,就會(huì)覆蓋該空間之后的一段存儲(chǔ)區(qū)域,這就叫Heap Corruption。這通常也被用作黑客攻擊的一種手段,因?yàn)槿绻谠摽臻g之后的那段存儲(chǔ)區(qū)域如果是比較重要的數(shù)據(jù),就可以利用Heap Corruption來(lái)把這些數(shù)據(jù)修改掉了,后果當(dāng)然可想而知了。
              閱讀全文

            posted @ 2007-04-13 20:33 Shuffy 閱讀(567) | 評(píng)論 (0)  編輯 |

                 摘要: 本文從介紹基礎(chǔ)概念入手,探討了在C/C++中對(duì)日期和時(shí)間操作所用到的數(shù)據(jù)結(jié)構(gòu)和函數(shù),并對(duì)計(jì)時(shí)、時(shí)間的獲取、時(shí)間的計(jì)算和顯示格式等方面進(jìn)行了闡述。本文還通過(guò)大量的實(shí)例向你展示了time.h頭文件中聲明的各種函數(shù)和數(shù)據(jù)結(jié)構(gòu)的詳細(xì)使用方法。  閱讀全文

            posted @ 2007-04-13 19:34 Shuffy 閱讀(326) | 評(píng)論 (0)  編輯 |

                 摘要: 第3項(xiàng): 盡可能使用 const

            const令人贊嘆之處就是:你可以通過(guò)它來(lái)指定一個(gè)語(yǔ)義上的約束(一個(gè)特定的不能夠更改的對(duì)象)這一約束由編譯器來(lái)保證。通過(guò)一個(gè)const,你可以告訴編譯器和其他程序員,你的程序中有一個(gè)數(shù)值需要保持恒定不變。不管何時(shí),當(dāng)你需要這樣一個(gè)數(shù)時(shí),你都應(yīng)該這樣做,這樣你便可以讓編譯器來(lái)協(xié)助你確保這一約束不被破壞
            。  閱讀全文

            posted @ 2007-04-13 19:14 Shuffy 閱讀(148) | 評(píng)論 (0)  編輯 |

                 摘要: 這一項(xiàng)似乎叫做“盡量把工作交給編譯器而不是預(yù)編譯器”更恰當(dāng),因?yàn)?#define 的內(nèi)容不應(yīng)該屬于語(yǔ)言自身的范疇。這是 #define 的眾多問(wèn)題之一,請(qǐng)看下面的代碼:  閱讀全文

            posted @ 2007-04-13 18:59 Shuffy 閱讀(237) | 評(píng)論 (0)  編輯 |

            国内精品人妻无码久久久影院| 潮喷大喷水系列无码久久精品| 久久国产精品99精品国产987| 久久久久久国产精品美女| 国产激情久久久久影院小草| 久久91精品国产91久久小草| 人妻无码中文久久久久专区| 伊人久久综合精品无码AV专区| 中文字幕精品久久久久人妻| 欧美久久一级内射wwwwww.| 久久久久99精品成人片三人毛片| 国产巨作麻豆欧美亚洲综合久久| 国产精品成人精品久久久 | 久久嫩草影院免费看夜色| 国产成人综合久久精品尤物| 国产综合成人久久大片91| 久久99久久无码毛片一区二区| 久久久久国产精品嫩草影院 | 国产综合免费精品久久久| 久久综合综合久久97色| 精品水蜜桃久久久久久久| 久久e热在这里只有国产中文精品99| 精品久久综合1区2区3区激情| 久久久久国产| 亚洲乱码中文字幕久久孕妇黑人| 久久综合亚洲欧美成人| 2022年国产精品久久久久 | 久久久久一本毛久久久| 久久精品国产亚洲Aⅴ蜜臀色欲| 欧美久久一区二区三区| 色欲综合久久躁天天躁蜜桃| 丰满少妇人妻久久久久久| 国产叼嘿久久精品久久| 国产欧美久久久精品影院| 99热成人精品热久久669| 久久本道久久综合伊人| 四虎国产精品成人免费久久| 99久久99这里只有免费费精品| 久久99精品国产麻豆不卡| 久久人人爽人人爽人人片AV麻烦| 99精品久久精品|