C 複習中相關要點的記錄(一)

2021-10-01 02:51:32 字數 2490 閱讀 9900

c++引入命名空間是為了解決命名衝突問題;

假設這樣一種情況,當乙個班上有兩個名叫 zara 的學生時,為了明確區分它們,我們在使用名字之外,不得不使用一些額外的資訊,比如他們的家庭住址,或者他們父母的名字等等。

同樣的情況也出現在 c++ 應用程式中。例如,您可能會寫乙個名為 xyz() 的函式,在另乙個可用的庫中也存在乙個相同的函式 xyz()。這樣,編譯器就無法判斷您所使用的是哪乙個 xyz() 函式。

因此,引入了命名空間這個概念,專門用於解決上面的問題,它可作為附加資訊來區分不同庫中相同名稱的函式、類、變數等。使用了命名空間即定義了上下文。本質上,命名空間就是定義了乙個範圍。

命名空間的定義使用關鍵字 namespace,後跟命名空間的名稱,如下所示:

namespace namespace_name

例項

#include

using

namespace std;

// 第乙個命名空間

namespace first_space

}// 第二個命名空間

namespace second_space

}int main (

)

可以使用 using namespace 指令,這樣在使用命名空間時就可以不用在前面加上命名空間的名稱。這個指令會告訴編譯器,後續的**將使用指定的命名空間中的名稱。

#include

using

namespace std;

// 第乙個命名空間

namespace first_space

}// 第二個命名空間

namespace second_space

}using

namespace first_space;

int main (

)

兩種定義方式:

#define pi 3.14

const float pi 3.1415

型別

位元組數(位數)

最小值最大值

int4(32)

-2147483648

2147483648

shot int

2(16)

-32768

32768

unsigned int

4(32)

04294967295

float:4位元組;

double:8位元組;

long double:16位元組;

(在學習…)

型別數值範圍大的優先作為轉換物件

double>float>unsigned long>long> unsigned int> int

也就是long 和int相加會自動轉換成long

使用於大範圍轉換小範圍

int a;

float b,c;

a=(int)b+c;

函式名稱

功能建構函式

產生或複製字串

析構函式

銷毀字串

=,assign

賦以新值

swap

交換兩個字串的內容

新增字元

insert ()

插入字元

erase()

刪除字元

clear ()

移除全部字元

resize ()

改變字元數量

replace()

替換字元

+串聯字串

==,! =,<,<=,>,>=,compare()

比較字串內容

size(),length()

返回字元數量

max_size ()

返回字元的最大可能個數

empty ()

判斷字串是否為空

capacity ()

返回重新分配之前的字元容量

reserve()

保留記憶體以儲存一定數量的字元

,at()

訪問單一字元

>>,

getline() 從 stream 中讀取某值

<<

將值寫入 stream

copy()

將內容複製為乙個 c - string

c_str()

將內容以 c - string 形式返回

data()

將內容以字元陣列形式返回

substr()

返回子字串

find()

搜尋某子字串或字元

begin( ),end()

提供正向迭代器支援

rbegin(),rend()

提供逆向迭代器支援

get_allocator()

返回配置器

C 複習中相關要點記錄(三)

include 指令 define指令 define newline coutvoid owner int main void owner 巨集函式 條件編譯指令 使用結構來集合各種不同的資料型別,形成新的資料型別。結構 陣列 陣列可以做結構成員 也可以宣告成結構行陣列。結構指標陣列 結構做函式引數...

C 複習要點總結之八 繼承一

一 不同的繼承方式會改變繼承成員的訪問屬性 public 修飾的成員變數 方法 在類的內部和外部都可以使用。protected 修飾的成員變數 方法在類的內部使用,在繼承的子類中使用,類的外部不能使用。是為了在家族中使用,為了得到繼承!private 修飾的成員變數 方法 只能在類的內部使用,不能在...

CSS相關的複習記錄 持續更新

自內向外 content,padding,border,margin.content代表 width height.w3c預設 box sizing content box ie 預設 box sizing border box 行內元素可以用 text align center 塊級元素可以使用 ...