第32課 初探C 標準庫

2021-09-26 14:56:38 字數 2391 閱讀 6248

操作符<<的原生意義是按位左移,例:1  <<  2 ;

其意義是將整數 1 按位左移 2 位,即:0000 0001->0000 0100

過載左移操作符,將變數或常量左移到乙個物件中!

1 #include 2

3const

char endl = '\n'

;45class

console613

14 console& operator

<< (char

c)15

1920 console& operator

<< (const

char*s)

2125

26 console& operator

<< (double

d)27

31};

3233

console cout;

3435

intmain()

36

過載左移操作符(仿cout類)  //這個例子很微妙,需要仔細揣摩體會

重**明輪子並不是一件有創造性的事情,站在巨人的肩膀上解決問題會更加有效!

(1)c++ 標準庫並不是c++ 語言的一部分

(2)c++ 標準庫是由類庫函式庫組成的集合

(3)c++ 標準庫中定義的類和物件都位於std命名空間中

(4)c++ 標準庫的標頭檔案都不帶.h 字尾

(5)c++ 標準庫涵蓋了 c 庫的功能

3.1 c++ 編譯環境的組成

(1)c語言相容庫:標頭檔案帶.h,是c++編譯器廠商推廣自己的產品,而提供的c相容庫(不是c++標準庫提供的,也不是c庫提供的

(2)c++ 標準庫:如string、cstdio(注意,不帶.h)是c++標準庫提供的。使用時要用using namespace std找開命名空間

(3)c++標準庫中的c庫和c語言相容庫在功能上相同,但是兩者隸屬於不同的模組,使用的標頭檔案不同

(4)不同廠商提供的c++編譯器,c++ 擴充套件語法模組和編譯器擴充套件模組各不相同

3.2 c++ 標準庫預定義的常用資料結構

(1)常用的資料結構類:、、、、、、、

(2)、、、(c++標準庫提供的c相容庫!

1/*2

//c++編譯商提供的c相容庫(既不是c++標準庫提供的,也不是c語言庫檔案,而是一種相容庫)

3#include

4#include

5#include

6#include 7*/

89//c++標準庫提供的c相容庫

10 #include 11 #include 12 #include 13 #include 14

15using

namespace std; //

位於std命名空間中

1617

intmain()

18

c++標準庫中的c庫相容(如cstdio)

使用c++標準庫的輸入輸出

2 #include 3

4using

namespace std; //

位於std命名空間中56

intmain()

7c++中的輸入輸出

(1)c++ 標準庫是由類庫函式庫組成的集合

(2)c++ 標準庫包含經經典演算法資料結構的實現

(3)c++ 標準庫涵蓋了c庫的功能

(4)c++ 標準庫位於std命名空間中

第32課 初探C 標準庫

操作符 的原生意義是按位左移,例 1 2 其意義是將整數 1 按位左移 2 位,即 0000 0001 0000 0100 過載左移操作符,將變數或常量左移到乙個物件中!1 include 2 3const char endl n 45class console613 14 console oper...

32 初探c 標準庫

操作符 的原生意義是按位左移,例 1 2 其意義是將整數1按位左移2位,即 0000 0001 0000 0100 過載左移操作符,將變數或常量左移到乙個物件中。include const char endl n class console public console operator int i...

C 32 初探標準庫

進行乙個有趣的過載 開始試驗 class test test cout cout.operator 1 cout 1 改進有模有樣的 include const char endl n class console console operator char c console operator co...