原本這章是不打算寫了的,畢竟本身學的是JAVA,C++就不想看了,但畢竟還有一點時間,就把C++也看一下吧ios
目錄結構算法
10.1 C++程序基礎數組
10.1.1 數據類型函數
1 基本數據類型this
2 常量和變量設計
3 複合數據類型指針
4 引用和指針對象
10.1.2 運算符、表達式和語句blog
10.1.3 基本輸入/輸出繼承
10.1.4 函數
1 函數定義和聲明
2 函數調用
3 內聯函數
4 函數的重載
10.1.5 類與對象
1 類
2 對象
3 靜態成員
4 this指針
5 友元
10.2 繼承與多態
1 繼承
2 多態
10.3 異常處理
10.4 標準庫
10.4.1 I/O流庫
10.4.2 string
1 聲明string對象
2 string對象的操做
10.4.3 STL
1 算法
2 容器
3 迭代器
10.4.4 vector
1 初始化vector對象
2 vector對象的運算
C++語言是對C語言的擴展和超集,所以同時支持過程式和麪向對象的程序設計泛型
10.1 C++程序基礎
C++程序基礎包括數據類型(基本內置類型、複合類型)、輸入輸出處理、語句、函數以及類等
10.1.1 數據類型
1 基本數據類型:繼承C,擴展了布爾類型(bool)和寬字符類型(wchar_t)、UNICODE字符類型char16_t和char32_t
2 常量和變量
1)字面值常量
2)左值和右值:左值的實質是內存位置,右值的實質是數值,右值能夠出如今賦值號的右邊,但不能出如今賦值號的左邊
3)定義常量:能夠用宏定義和const定義常量
3 複合數據類型:C++的枚舉、結構體、共同體和數組都是複合數據類型
4 引用和指針:引用爲對象提供了另外一個名字(別名),經過將聲明符寫成「&d"的形式來定義引用類型,其中"d"是聲明的變量名
引用與指針不一樣:(1)不存在空引用;(2)一旦引用被初始化爲一個對象,就不能再引用另外一個對象;(3)引用必須在建立時被初始化
10.1.2 運算符、表達式和語句
C++繼承了C語言的算術運算符,關係運算符,邏輯運算符,位運算符,賦值運算符和其餘運算符,擴充了::,new,delete運算符,還支持對運算符的重載機制
10.1.3 基本輸入/輸出
C++使用稱爲iostream的I/O流庫,還有iomanip,用於格式化
1)輸出:cout<<d;
2)輸入:cin>>d;
3)格式控制:精度和寬度
10.1.4 函數:庫函數和自定義函數
1 函數的定義和聲明:略
2 函數調用:略
3 內聯函數:對於內聯函數,編譯器是將其函數體放在調用該內聯函數的地方,不存在普通函數調用時棧記錄的建立和釋放開銷
4 函數的重載:只要參數表中參數個數或類型不一樣,就視爲不一樣的函數
10.1.5 類與對象
對象是人們要進行研究的任何事物,從最簡單的整數到複雜的機器均可看做對象。具備相同或類似性質的對象的抽象就是類
1 類:有兩種類型的成員:數據成員,成員函數
類成員有以下3種不一樣的訪問權限:公有,私有,保護
2 對象:對象是類的實例
1)對象的建立:類的變量稱爲對象
2)對象的操做:.或->
3)構造函數:默認構造函數,構造函數的重載
4)析構函數:~
3 靜態成員:static,靜態數據成員,靜態成員函數 ::
4 this指針:指向類的對象
5 友元:在C++的一個類定義中,能夠指定某個全局函數、某個其餘類或某個其餘類的成員函數來直接訪問該類的私有和保護成員,它們分別稱爲友元函數,友元類和友元類函數
10.2 繼承和多態
1 繼承:實現代碼複用
2 多態:一個接口,多個方法:方法的重置或實現;純虛函數
10.3 異常處理
異常是程序可能檢測到的運行時刻不正常的狀況。
try、catch、finally和throw是異常處理的關鍵字,它們配合起來工做
10.4 標準庫
分爲標準函數庫和類庫兩部分。標準函數庫包含了全部的C標準庫,類庫定義了一些常見操做的類,如I/O類,string類,數值類和STL的容器類、算法、函數對象、迭代器、分配器,以及異常處理類
10.4.1 I/O流庫:iostream
10.4.2 string:C++的字符串標準庫類型是從新定義的類string,使用string時沒必要再擔憂空間大小與字符串長短等問題
1 聲明string對象:包含頭文件<string>,string str
10.4.3 STL:(Standard Template Library)標準模板庫:是一系列軟件代碼的統稱,其代碼從廣義上分爲三類:算法,容器和迭代器
STL被組織成下面的13個頭文件:<algorithm> <deque> <functional> <iterator> <vector> <list> <map> <memory> <numeric> <queue> <set> <stack> <utility>
1 算法:主要由頭文件<algorithm> <numeric> <functional>說明
2 容器
3 迭代器:由頭文件<utility> <iterator> <memory>說明
10.4.4 vector
簡單來講,vector是一個可以存聽任意類型數據的動態數組
1 初始化vector對象