原创 第一章 從C到C++的一些變化 總結

一、C中struct和C++中的類的區別 Language C C++ 名稱 結構體 類 成員 成員變量 成員變量(屬性)、成員函數(方法) 定義 結構體變量 對象/實例(定義的過程叫實例化) 二、新舊C++標準頭文件的區別 ol

原创 C語言指針關鍵知識點總結

本文目錄一、對星號 * 的總結二、各種指針總結1、數組指針2、字符串指針3、指針變量做函數參數4、指針作爲函數返回值5、指針數組6、二維數組指針7、函數指針三、指針對比四、空指針NULL與NUL以及void指針 一、對星號 * 的

原创 C語言輸入輸出用法總結

文章目錄一、輸出1) type2) width3) .precision4) flag二、輸入1、輸入函數2、getchar()、getche()、getch()區別3、gets與scanf區別4、scanf函數三、關於緩衝區的一

原创 書上的一段代碼學到的東西

幾個關鍵點 從 while((ch = getchar()) != EOF && ch != ‘\n’); 中,可以學到的是: 首先要回憶一下之前文章裏面的連續兩行使用scanf函數時,爲什麼第二個scanf函數沒有

原创 字符串分隔

題目描述 •連續輸入字符串,請按長度爲8拆分每個字符串後輸出到新的字符串數組; •長度不是8整數倍的字符串請在後面補數字0,空字符串不處理。 輸入描述: 連續輸入字符串(輸入2次,每個字符串長度小於100) 輸出描述: 輸出到長度

原创 第七章 模板

文章目錄一、C++模板編程(泛型編程)1. 基本概念2. 函數模板3. 類模板4. 使用類模板創建對象二、C++模板編程的特性1. C++模板的顯式具體化函數模板的顯式具體化類模板的顯式具體化部分顯式具體化2. C++模板中的非類

原创 第六章 運算符重載

文章目錄一、運算符重載本質和使用規則二、成員函數重載運算符與全局函數(友元函數)重載運算符的區別三、其他運算符重載(代碼詳見教程) 一、運算符重載本質和使用規則 本質 運算符重載是通過函數實現的,它本質上是函數重載。 使用規則

原创 第五章 C++多態(Polymorphism)與虛函數(Virtual Function)

文章目錄一、多態與虛函數多態虛函數二、抽象類與純虛函數純虛函數抽象類其他① 虛函數表 —> 多態實現機制② typeid運算符:獲取類型信息③ RTTI機制及其內存模型④ 靜態綁定和動態綁定 一、多態與虛函數 多態 定義 自然

原创 第四章 繼承與派生

文章目錄一、三種繼承的方式二、繼承的對象內存模型沒有繼承關係時存在單繼承關係時存在多繼承關係時存在虛繼承關係時三、繼承時的構造函數單繼承多繼承虛繼承四、析構函數單繼承多繼承- 其他問題① 繼承時的名字遮蔽問題以及作用域嵌套② 藉助

原创 第三章 引用

文章目錄一、引用與指針的聯繫和區別1、聯繫2、區別二、const 引用1、引用(指針)的缺陷(指針和引用本質上是一樣的)2、添加const後引用的變化 一、引用與指針的聯繫和區別 1、聯繫 引用只是對指針進行了簡單的封裝,它的底層

原创 第二章 類和對象

一、類中成員函數和成員變量存儲位置 成員變量在堆區或棧區分配內存,成員函數在代碼區分配內存。 sizeof(className) == sizeof(成員變量) 二、析構函數的執行時機 在所有函數之外創建的對象是全局對象,它和全