C 基礎知識

2021-07-11 08:49:11 字數 820 閱讀 2228

內建型別:c++中這些基本的資料型別也稱為內建型別,也就是語

言內部已定義的基本型別。

自定義型別:自己用struct/class/enum/union等定義的就是自定義類 型。

名字空間:namspace name

解決全域性命名衝突的問題;

::是作用域解析符 

cout是標準輸出流物件  《是輸出操作符

cin 是標準輸入流物件  >>是輸入操作符

函式過載:在同乙個作用域內,一組函式的函式名相同,引數列表不同(個數不同/型別不同),返回值可用可不同。

呼叫約定:

c和c++的呼叫約定是不同的,所以在不同的檔案中,如果要呼叫c的**,會造成錯誤。加extern "c" 

因為c++ 語言支援函式過載,c  語言不支援函式過載。函式被 c++編譯後在庫中的名字 與 編譯後在庫中的名字 與 c  語言的不同。假設某個函式的原型為: 

voi d f oo( i nt x, i nt y) ; 被 該函式被 c  編譯器編譯後在庫中的名字為_foo而 ,而 c++ 編譯器則會產生像 _foo_int_int  之類的名字。

c++ 提供了 c  連線交換指定符號 extern 「c 」來解決名字匹配問題。

預設引數:預設預設引數只能從後向前預設。

//全預設引數

int add1 (int a = 0, int b = 0)

// 半預設引數

int add2 (int a, int b = 0)

C 基礎知識

抽象類 abstract class 一種不可以被例項化的類。抽象類中一般含有抽象方法,當然也可有具體實現。繼承類只有實現過所有抽象類的抽象方法後才能被例項化。介面 inte ce 只含有共有抽象方法 public abstract method 的類。這些方法必須在子類中被實現。反射 程式集包含模...

c 基礎知識

或運算的意義是什麼 0 0 0 0 1 1 1 0 1 1 1 1 無進製與運算的意義是什麼 在vc中,視窗的每個屬性對應乙個只有一位為1的16位的二進位制數,當增加某屬性做或運算 即可,取消某個屬性只需與 上這個屬性的取反。cs.style ws maximizebox 和cs.style cs....

C 基礎知識

1 malloc和new區別與聯絡 a malloc malloc為函式,需要標頭檔案,申請的無型別,需要強制轉換 free釋放。示例 char p char malloc 10 sizeof char free p b new new是運算子,不需要標頭檔案,申請的是有型別的,自動呼叫建構函式 d...