侯捷老師C 基礎課程筆記1 2

2022-07-22 19:15:15 字數 602 閱讀 6528

基於物件(object based)與物件導向(object oriented)的區別

通常「基於物件」使用物件,但無法利用現有的物件模版產生新的物件型別,繼而產生新的物件。即「基於物件」只有封裝,沒有繼承和多型的特點。

「物件導向」具有「封裝、繼承、多型」三大特點,缺一不可。

版本c++98 是c++1.0版本 於2023年發布

c++11 是c++2.0版本 於2023年發布,增添了許多新的關鍵字

#include<.h>和#include".h"的區別

header標頭檔案中的「防衛式宣告」

filename.h

1.#ifndef _filename_

2.#define _filename_

......

#endif

解釋:#ifndef依賴於巨集定義名,當巨集已經定義時,#endif之前的**會被忽略,保證filename只被執行一次。

防衛式宣告作用:防止乙個標頭檔案被包含多次,而導致的重複定義。

另外,#pragma也可以達到類似效果,其保證同乙個檔案不會被編譯多次,但兩個不同檔案內容相同時,仍會出錯。

c 筆記(七)侯捷老師課程 虛函式與多型

在任何乙個成員函式之前加上virtual 子類可以呼叫父類的函式,繼承的是呼叫權 1 非虛函式 non virtual 你不希望子類重新定義 override,複寫 它。2 虛函式 virtual 你希望子類重新定義它,且它已有預設定義。3 純虛函式 pure virtual 你希望子類一定要重新定...

侯捷C 筆記

1.如果是類中唯讀函式後面沒有加上const,這樣如果變數定義成const,而函式沒寫成const,這樣編譯期會困惑。2.相同class的各個物件objects互為友元。3.建構函式初始化用 比 裡面初始化效率更高。4.函式返回值寫成void時,應該考慮鏈式賦值,如果是void就行不通了。5.拷貝賦...

C 11新特性 侯捷 課程筆記 二

本部分包括的內容為variadic templates 可變模板引數 這部分似乎是個概述,我看到後面有好幾節課也是這個主題。void print template 這裡的.是關鍵字的一部分 void print const t firstarg,const types args 這裡的.要寫在自定義...