1、面向過程:分析解決問題所需要的步驟,然後用函式把這些步驟一步一步實 現。
物件導向:直接描述客觀世界的物件及其相互關係。現實世界中任何實體都 可以看作是物件,物件之間通過訊息相互作用,利用物件導向程式設計,我們只關心 藉口,不關心怎樣實現。
2、c++的三個特性:繼承、封裝和多型。
繼承:乙個物件直接使用另乙個物件的屬性和方法。繼承可以使子類具有父類的各種屬性和方法,而不需要再次編寫相同的**。
封裝:在程式上,隱藏物件的屬性和實現細節,僅對外公開介面,控制屬性多型:介面多種不同的實現方式。同乙個操作作用於不同的物件上可以有不 同的解釋,並產生不同的執行效果。的讀和修改的訪問級別。目的是:增強安全性和簡化程式設計。
3、sizeof
是個運算子,用來判斷資料型別以及表示式長度。位元組數數的計算是
在編譯時進行的。
sizeof(型別說明符、陣列名或表示式)
4、typedef:用來為複雜的宣告定義簡單的別名。它本身是個儲存類的關鍵字。
typedef int newname:
#define:巨集定義又稱為巨集代換、巨集替換。三大預處理功能之一,另外兩個是
檔案包含和條件編譯。
5、enum:
列舉型別,在實際問題中,有些變數的取值範圍被限制在乙個有限的範
圍內。為了說明這些量,引入了新的資料型別。
6、struct、class 建構函式理解:
struct 和 class 最本質的區別就是預設的訪問控制:
struct 預設的是 public,而 class 預設的是 private。
struct:結構體型別,用於存放具有不同資料型別。
class:類,是構造程式的基本單位。
7、static:關鍵字。
宣告靜態變數,儲存在靜態記憶體中。作用:保持變數持久和
隱藏。靜態區域性變數在程式執行到該物件的宣告處的時被首次初始化,以後的函
數呼叫不再進行初始化。
8、const:關鍵字。它限定乙個變數不允許被改變。作用:在一定程度上可以提
高程式的安全性和可靠性。對別人理解程式也有一些幫助。同時,可以很方便地
進行引數的調整和修改。
9、c 和 c++記憶體分配:
(1)從靜態儲存區域分配。內存在程式編譯的時候就已經分配好,這塊內存在程式這個執行期間都存在。
(2)在棧上建立。在執行函式時,由編譯器自動分配和釋放。
(3)動態記憶體分配。由程式設計師自己決定分配,程式在執行時候用 malloc 或
new 申請任意位元組記憶體,然後由程式設計師自己負責在何時用 free 或 delete 釋放記憶體。
這樣動態記憶體的生存週期由程式設計師決定,使用起來比較靈活。
char *p;
p=(char*)malloc(size);
.......
free(p):
int *p=new int;
........
delete p;
10、指標和引用:
引用:引用就是某乙個變數的乙個別名,對引用的操作與對變數的直 接操作
完全一樣。inta;int & ra=a; 定義引用 ra,它是變數 a 的引用。
區別:(1)引用不能為空,指標可以為空。
(2)引用不可以改變指向,指標可以改變指向。
(3)引用的大小是所指向的變數的大小,而指標是指本身的大小。
(4)引用僅僅是個別名,而指標是個實體。
11、函式的返回值:
乙個函式只能有乙個返回值,超過乙個返回值的函式可以使用指標或結構體變數。
12、extern:
宣告外部變數或函式,已標示變數或函式的定義在別的檔案中,提
示編譯器遇到此變數或函式時,在其他模組中尋找其定義。
13、char*p=」sdfsdf」; 這種方法初始化的是常量字串,所以 p 不能修改字串
的內容。
char p=」sdfsdf」;
p=」sdfsdf」;
char p=」sdfsdf」;
這兩個都是變數,可以修改。指標在 32 位系統下都佔 4 個位元組。
14、陣列名和指標:
陣列名不是指標,陣列名表示的是陣列首元素的位址,是乙個常量。指標存放的是乙個變數的位址,它本身是個變數。
15、指標函式與函式指標:
16、同步與非同步:
面試問題c
1 如何避免記憶體洩漏 2 namespace 3 如何防止記憶體洩漏 4 堆和棧的區別 5 記憶體的幾種形式 6 linux指令 1 如何避免記憶體洩漏 答 記憶體洩漏 記憶體洩漏是指由於未能釋放掉不再使用的記憶體情況,並不是指內存在物理上的消失,而是應用程式分配某段記憶體後,由於設計錯誤失去了對...
C 面試問題
一面 1 多型性都有哪些?靜態和動態,然後分別敘述了一下虛函式和函式過載 2 動態繫結怎麼實現?就是問了一下基類與派生類指標和引用的轉換問題 3 型別轉換有哪些?四種型別轉換,分別舉例說明 4 操作符過載 操作符 具體如何去定義,讓把操作符過載函式原型說一遍 5 記憶體對齊的原則?原則敘述了一下並舉...
C 面試問題
1 概念 陣列 儲存連續多個相同型別的資料 2 賦值 同型別的指標變數可以相互賦值,陣列不行,只能乙個乙個元素的賦值或拷貝 3 儲存方式 陣列 連續記憶體空間。4 sizeof 陣列的sizeof求的是占用的空間 位元組 在32位平台下,無論指標的型別是什麼,sizeof 指標名 都是4,在64位平...