Time of Update: 2015-04-21
標籤:1.在項目中添加SQLDmo dll檔案引用(SQLDMO(SQL Distributed Management Objects,SQL分散式管理物件))2在相應頁面加using SQLDMO引用3.下面是用C#語言書寫的用於Microsoft SQL ServerDatabase Backup和恢複的類:using System; namespace DbService { /// <summary> /// DbOper類,主要實現對Microsoft SQL
Time of Update: 2015-04-21
標籤: 在我們的開發中,跨平台的需求越來越強烈,如何保持C/C++代碼能在多個平台上編譯,是一個比較值得研究的問題。關於跨平台的文章網上很多,跨平台的庫網上也很多。那麼我從自己的跨平台開發經驗談一談自己的心得,希望對大家能夠起到一定的作用。主要涉及到Windows和linux兩個作業系統。1、
Time of Update: 2015-04-21
標籤:effective c++ 讀書筆記 開篇的話這個星期不再發布關於資料結構的部落格,想把半個月來看的書做一些總結,整理整理,第一本就是《Effective
Time of Update: 2015-04-21
標籤:effective c++ 讀書筆記 《Effective C++》第二章:構造/析構/賦值運算C++預設編寫的函數。C++編譯器如果沒有發現以下函數,就會為類產生一份預設版本的: 1) default建構函式 2) default解構函式 3) copy建構函式 4) copy assignment操作符(=運算子)
Time of Update: 2015-04-21
標籤:effective c++ 讀書筆記 《Effective
Time of Update: 2015-04-21
標籤:一.關係運算子關係運算子,作為C語言及至主流語言中很重要的一種運算子號,它用於比較運算.包括大於(>), 小於(<),等於(==),大於等於(>=), 小於等於(<=) 和 不等於(!=) 六種符號.of course ,由條件運算子串連的運算式成立的話,我們說它的結果為真. (前面已經提到C語言中非0即為真 )C語言中關係運算的結果.真為"1" , 假為"0":int a = 6 > 5; // a = 1;int a = 5 > 6; // a =
Time of Update: 2015-04-21
標籤:大家知道虛函數是通過一張虛函數表來實現的。在這個表中,主要是一個類的虛函數的地址表,這張表解決了繼承、覆蓋的問題,其內容真是反應實際的函數。這樣,在有虛函數的類的執行個體中,這個表分配在了這個執行個體的記憶體中,所以,當用父類的指標來操作一個子類的時候,這張虛函數表就顯得尤為重要了。它就像一個地圖一樣,指明了實際所應該調用的函數。C++的標準規則中說到,編譯器必須保證虛函數表的指標存在於對象執行個體中最前面的位置(這樣是為了保證正確取到虛函數的位移量)。這意味著通過對象執行個體的地址得到這
Time of Update: 2015-04-21
標籤:資料結構 棧 c++ 演算法 上一篇詳解了二叉樹轉雙向鏈表,此篇作為【C語言強化】系列第二篇,來聊聊有關棧的一道題,通過這道題,你可以掌握如何使用棧“先進後出"的特性如何巧妙地藉助輔助棧如何在結構體中定義可共用的靜態成員變數題目看似很簡單的求最小值函數,思路有很多很多。筆者首先想到每次push入棧都進行一次排序,使這個
Time of Update: 2015-04-21
標籤:1,求成員變數的位移: 2,const實現機制:在編譯期間完成,對於內建類型,如int, 編譯器可能使用常數直接替換掉對此變數的引用。而對於結構體不一定。編譯器在最佳化代碼時把j直接最佳化成64h了,所以雖然p和&j的值一樣,但j不再通過訪問j的地址輸出,而是使用的直接的數。(反組譯碼時也有看到直接把數字壓棧push 100 ) C++記錄2
Time of Update: 2015-04-21
標籤:c++ 操作符重載 《effective c++》的確是一本神書,閱讀起來的感覺可以用酣暢淋漓來形容,似乎很多以前沒有在意的小細節都變得豁然開朗了起來,在條款10中,scott建議我們重載操作符’=’時,返回一個*this的引用。 賦值,我們往往可以寫作連鎖形式: int x,y,z;x = y = z = 10;賦值採用了右結合律,所以以上連鎖賦值被解析為:x = (y = (z =
Time of Update: 2015-04-21
標籤:很久以前就對作業系統很好奇,用了這麼多年Windows,對他的運作機理也不是很清楚,所以一直想自己動手寫一個,研究一下作業系統究竟是怎麼實現的。後來在網上也找到過一些教程(比如:《自己動手寫作業系統》),大都是先要用彙編寫使用中的磁碟分割的第一個扇區(MBR)。13年4月左右我也曾經跟著教程嘗試過,用彙編調用BIOS中斷讀扇區、載入Bootstrap。不得不說用彙編很容易出錯,可讀性也不好,所以這次我就想能不能完全不用彙編寫作業系統。UEFI經過一番搜尋,我找到了一個叫UEFI的東西,下面
Time of Update: 2015-04-21
標籤:int定義的變數只能放整形資料,string定義的變數只能放字串資料,它們是內建資料類型;struct{},class(類)都是使用者定義的資料類型,可以放任意類型資料。用資料類型定義變數就像用模板規範的建立了一個變數,使其不能任意的儲存資料,比如int類型的變數無法儲存string類型的資料;所有的資料類型(int,string,struct出來的Student)就像各種各樣的模板,struct出來的Student是我們自己創造的資料類型模板。
Time of Update: 2015-04-21
標籤:一、方法重載: 1.兩個函數同名,就互相構成方法的重載關係 2.重載的函數,必須跟其他函數之間具有不同的參數類型或參數個數二、欄位與屬性 類的欄位: 類裡面是可以直接定義變數的,這些變數就叫類的欄位,也叫成員變數。 類的屬性(扳手): 本身不儲存資料,用來給欄位賦值和取值的一個存取過程。可以保護欄位。 包含讀訪問器和寫訪問器兩個函數;讀訪問器 get { return Name;
Time of Update: 2015-04-21
標籤:c# static 靜態欄位 靜態建構函式 靜態方法 靜態變數講解順序背景靜態欄位靜態函數靜態方法疑問解答背景static來源在編寫類的時候,有時候需要類裡面的某個成員具有唯一性,也就是,對所有的對象都保持只有一個的狀態。比如建立***,我們都是中國人,但總不能每個人都要儲存一個中國人欄位吧,用一個就夠了。static作用MSDN說:使用 static
Time of Update: 2015-04-21
標籤:建立string: string (char[]) 使用指定的字串數組構建一個新的string對象 Copy(string) 使用指定的string構建一個新的string對象 比較函數: Compare(a,b) 和a.CompareTo(b) 相等返回0,大於返回正數,小於返回負數; Equals()
Time of Update: 2015-04-21
標籤:1. Delegate類似于于c++中的函數指標,在C#中定義為一個類聲明定義時,有些像類:delegate int MyDelegate(char c);執行個體化:(注意函數不要加括弧,要的不是函數調用,而是函數地址)MyDelegate myfuncs = new MyDelegate(MyClass.testFunc);MyDelegate myfuncs = MyClass.testFunc;不支援無參數的建構函式。MyDelegate myfuncs = new
Time of Update: 2015-04-21
標籤:異常捕獲:1. CLR系統定義了一系列異常,它們間常有繼承關係System.Object System.Exception System.SystemException System.ArgumentException System.ArgumentNullException 2.
Time of Update: 2015-04-21
標籤: 今天我們研究學習一下C#中的異常處理機制。 首先,異常處理是用來防止可以預測到卻不能完全防止的錯誤。使用得當的異常處理機制,可以有效防止程式的崩潰。在這種意義上,程式其他的一些錯誤,諸如bugs, errors需要用應用程式來處理使用者的錯誤。
Time of Update: 2015-04-21
標籤:c# static 靜態欄位 靜態建構函式 靜態方法 靜態變數講解順序背景靜態欄位靜態函數靜態方法疑問解答背景static來源在編寫類的時候,有時候需要類裡面的某個成員具有唯一性,也就是,對所有的對象都保持只有一個的狀態。比如建立***,我們都是中國人,但總不能每個人都要儲存一個中國人欄位吧,用一個就夠了。static作用MSDN說:使用 static
Time of Update: 2015-04-21
【Linux】在Ubuntu12.04中寫C語言與Helloworld,helloworldc語言Ubuntu12.04內建C的環境,比Windows開發一個C爽多了,此C就是大名鼎鼎學電腦都要學的C語言。尤其當年的C語言,下個VC6蛋疼的要死,然後又卡卡的,提示的錯誤又是英文的,非常不爽。在Ubuntu寫C的流程是這樣的。1、按Ctrl+Alt+R開終端,輸入:gedit helloworld.c建立一個.c檔案。2、之後直接開啟一個記事本介面讓你寫。就一個NotePad一樣,