原创 c#基礎語言編程-序列化

引言 程序員在編寫應用程序的時候往往要將程序的某些數據存儲在內存中,然後將其寫入某個文件或是將它傳輸到網絡中的另一臺計算機上以實現通訊。這個將程序數據轉化成能被存儲並傳輸的格式的過程被稱爲”序列化”(Serialization),

原创 Mark博客使用指導

歡迎使用Markdown編輯器寫博客 本Markdown編輯器使用StackEdit修改而來,用它寫博客,將會帶來全新的體驗哦: Markdown和擴展Markdown簡潔的語法 代碼塊高亮 圖片鏈接和圖片上傳 LaTex數學公

原创 單鏈表

前言 順序表是用一組地址連續的存儲單元來保存數據的,所以它具有隨機存取的特點。即查找快速,但是做插入或刪除動作是,需要移動大量元素,效率較低。 鏈表是線性表的鏈式存儲結構,它相比於順序表,在插入和刪除元素時,效率要高很多。 每個數據單

原创 c++中的引用

引用是C++引入的新語言特性,是C++常用的一個重要內容之一,正確、靈活地使用引用,可以使程序簡潔、高效。 一、引用簡介   引用就是某一變量(目標)的一個別名,對引用的操作與對變量直接操作完全一樣。   引用的聲明方法:類型標識符 &引

原创 適配器模式

- 一、引言 在軟件系統中,爲針對應用環境的變化,將“一些現存的對象”放在新的環境中應用,能利用現有對象的良好實現,同時又能滿足新的應用環境所要求的接口?這就是Adapter 模式。 - 二、適配器的介紹 2.1定義

原创 算法複雜度

1 前言 算法時間複雜度,也就是算法的時間量度,就是在計算機上執行耗時。個算法花費的時間與算法中語句的執行次數成正比例,哪個算法中語句執行次數多,它花費時間就多。在應用中用O表示。 一個算法是由控制結構和原操作構成的,其執行的時間取決於

原创 數據結構及算法綜述

1 數據 序號 名稱 定義 舉例 1 數據 對客觀事物的符號表示,在計算機中就是能被識別的符號集合 數值、圖片、視頻、音頻等形式 2 數據項 數據中具有獨立含義,不可分割的最小數據單位,客觀實體一種特徵數據表示 成員變量

原创 c++ 控制檯流和字符串流

前言 上一章節簡單介紹c++中關於流的概念,這兩章節將重點講解如何使用,本章講解控制檯流和字符串流。 控制檯輸出流 輸出流定義在頭文件中,使用輸出流最簡單的方法就是 使用<<運算符。通過你<<可以輸出c++基本類型。包括int、指針、do

原创 組合模式

一、引言 在軟件開發過程中,我們經常會遇到處理簡單對象和複合對象的情況,例如對操作系統中目錄的處理就是這樣的一個例子,因爲目錄可以包括單獨的文件,也可以包括文件夾,文件夾又是由文件組成的,由於簡單對象和複合對象在功能上區別,導致在操作過程

原创 指針和數組

數組的本質 上一章節講過了指針,那麼數組是什麼,數據類型是什麼,爲什麼數組做函數參數的時候會退化爲指針,怎麼理解。 先看一段代碼: int i,*p,a[] = {3,4,5,6,79}; p= a; for (i=0;i<=9;i++

原创 順序表

前言 順序表是在計算機內存中以數組的形式保存的線性表,是指使用一組連續分配存儲單元有序的存儲數據元素的線性結構。 順序表還有後面講的單鏈表、循環鏈表、雙鏈表都是鏈表,根本區別是在內存中存儲數據的方式不同,每種方式都有優劣點,這也根據應用

原创 友元函數、類和運算符重載

友元函數介紹 在程序設計中,加入類A想訪問類B中的私有成員和私有函數時,爲了保持程序的封裝性,又讓其有共享性,就用到了友元類和友元函數。 友元類 class A { friend class B ; public :

原创 c++重點知識點

- const加強 在變量前加const,說明變量是常量只讀屬性。假如用指針去修改const常量會用什麼結果。上例子: //a 是一個只讀的常量,按照理論應該不能被修改 const int a = 10;//內存中爲a分配地址,賦

原创 指針和結構體

結構體的認識 結構體的定義 將不同數據類型的數據對象組織在一起。 結構體在c中和C++不同 在C中的結構體只能自定義數據類型,結構體中不允許有函數,而C++中的結構體可以加入成員函數。C中的結構體只涉及到數據結構,而不涉及到算法,也

原创 迭代器模式

引言 在面向對象編程中,經常遇到集合對象,在對其操作時重點工作有:1、集合內部數據的存儲,2、集合內部數據的查詢。在面向對象設計原則中有一條是單一職責原則,所以要分離這些職責,用不同的類承擔不同的責任。迭代器就是針對集合產生的,用來遍歷集