原创 C++ 讀取字符串

       在C++中可以通過cin來讀取一個字符串,但是每次讀取一個單詞並不是最好的選擇,例如,假設程序要求讀入的城市名,用戶輸入New York,希望程序讀入的是完成的城市名,而不單單是一個單詞。C++提供了一次額面向行的類成員函數

原创 C++ 模板類vector和模板類array

      模板類vector和array是數組的替代品,下面來介紹一下這兩種類以及與數組的對比。 1. 模板類vector       模板類vector類似於string類,也是一種動態數組,基本上,它是使用new創建動態數組的地帶品

原创 C++ 輸入、輸出與IO流(二)

重要的輸入流類: istream類最適合用於順序文本模式輸入,cin是其實例 ifstream類支持磁盤文件輸入 istringstream 構造輸入流對象: 如果在構造函數中指定一個文件名,在構造該對象時該文件便自動打開 ifstre

原创 C++ 輸入、輸出與IO流(一)

1. IO流的概念 當程序與外界環境進行信息交換時,存在兩個對象,一個是程序中的對象,另一個是文件對象。 流對象與文件操作: 程序建立一個流對象 指定這個流對象與某個文件對象建立聯繫 程序操作流對象 流對象通過文件系統對多連接的文件對象產

原创 C++ Vector對象

1. 爲什麼需要vector? 封裝任何類型的動態數組,自動創建和刪除 數組下標越界檢查 2. vector對象的定義: vector <元素類型> 數組對象名(數組長度); //例子: vector <int> arr(5) /

原创 C++ 運用cin來控制while循環

C++中有時需要用循環輸入數字,而將非數字輸入設置爲一個錯誤條件,如: while (cin >> x >> y) 我們知道,cin時istream類的一個對象,抽取運算符(>>)被設計成使得cin>>x也是一個istream對象,類運

原创 C++ 類的友元

友元是C++提供的一種破壞數據封裝和數據隱藏的機制 通過將一個模塊聲明爲另外一個模塊的友元,一個模塊能夠引用到另一個模塊中本是被隱藏的信息 可以聲明友元函數和友元類 爲了確保數據的完整性,及數據封裝與隱藏的原則,一般很少用友元 1.  友

原创 C++ 枚舉類

1. 枚舉類定義 語法形式 enum class 枚舉類型名:底層類型{枚舉值列表}; 默認的底層類型是int型,但是新的C++標準中可以自定義底層類型。 例: enum class Type {General,Light,Mediu

原创 C++ 函數和數組

來看看一個函數聲明: int sum_arr(int arr[], int n) //arr = array name, n = size 防護括號指出arr[ ]是一個數組,而方括號爲空則表明,可以將任何長度的數組傳遞給該函數。但是

原创 C++ 棧與隊列

1. 棧 棧是隻能從一端訪問的線性羣體,是一種後進先出的數據結構。 棧示意圖:                                    棧的基本狀態: 棧空 棧滿 一般狀態 棧空:棧中沒有元素(以數組容納的棧爲例)    

原创 C++ 運算符重載

C++中幾乎可以重載全部的運算符,而且只能重載C++中已經有的。不能重載的運算符:“. ”、“.*”、“::”、“?.”; 重載之後運算符的優先級和結合性都不會改變; 運算符重載是針對新類型的實際需要,對原有運算符進行適當的改造; 例如:

原创 C++ 泛型程序設計——迭代器

編寫不依賴於具體數據類型的程序 將算法從特定的數據節結構中抽象出來,成爲通用的 C++的模板爲泛型程序設計奠定了關鍵的基礎 術語:概念 用來界定具備一定功能的數據類型。 對於兩個不同的概念A和B,如果概念A所需求得功能也是概念B所需求的功

原创 C++ 虛函數

先看一個例子: #include<iostream> using namespace std; class Base1{ public: virtual void display() const; //虛函數 }; void B

原创 C++ 繼承與派生(二)

派生類把基類繼承以後,怎麼樣通過派生類完成對基類成員進行初始化呢?一般默認情況下,基類的構造函數不被繼承,派生類需要定義自己的構造函數。一般情況下,通過派生類將參數傳遞給基類的構造函數,完成對基類的初始化,C++11規定,可以使用usin

原创 C++ 繼承與派生(一)

1. 繼承與派生概述 1.1 繼承與派生是同一過程從不同的角度看 保持已有類的特性而構造新類的過程稱爲繼承 在已有類的基礎上新增自己的特性而產生新類的過程稱爲派生 被繼承的已有類稱爲基類(或者父類) 派生出的新類稱爲派生類(或子類) 直接