C 學習筆記14

2021-09-26 02:06:42 字數 1625 閱讀 6127

#include

using namespace std;

template

class singleton

~autorelease()

};public:

template..args>

static t*

getinstance

(args.

..args)

private:

singleton()

~singleton()

private:

static t* _pinstance;

static autorelease _auto;};

template

t *singleton

::_pinstance = nullptr;

template

class singleton

::autorelease singleton

::_auto;

class point

~point()

};intmain

(int argc,

char

* ar**)

for_each();

find();

lower_bound();

remove():不會直接刪除元素,僅是將滿足條件的元素賦給不滿足條件元素的位置

replace_if();

lambda表示式:匿名函式,格式為 (形參列表) ;

ref():引用包裝器,傳遞是引用,如果被引用的變數發生改變,傳遞的引數會隨之改變

注意:在遍歷元素的過程中,新增元素會導致底層資料存放的位置發生改變,從而導致迭代器失效,所以一般情況下不要在遍歷元素的同時刪除元素。

bind

可以使用bind函式(包括成員函式)事先繫結引數,其返回值是函式物件,如

f =

bind

(&class_name:

:func_name, class_example, placeholders:

:_1, placeholders:

:_2)

;//佔位符本身所在位置代表形參對應位置,佔位符的數字代表實參位置

對於成員函式的繫結,this指標所在位置既可傳遞位址,也可傳遞物件本身,如果傳遞的是位址,則必須保證函式被呼叫時,物件的生命週期仍存在。

mem_fn

全稱為member_function,用於適配類的成員函式

下為乙個簡單的示例

#include

#include

#include

#include

using namespace std;

class number

void

display()

bool iseven()

const

bool isprime()

const

private:

int _data;};

intmain

(int argc,

char

*ar**)

C 學習筆記 day14

1 對檔案的分類 1 文字檔案 每個位元組都是有效的可顯示的ascii碼,getline 2 二進位制檔案 位元組是連續的,不能用vi more檢視檔案內容,read按位元組數讀取 write 100 是整數的100,佔4個位元組 100 是字元陣列,佔3個位元組 2 異常 1 人為錯誤 由於程式設...

《C 高階教程》學習筆記14

第二十一,二十二天 昨天咖啡喝濃了頭居然發熱了 今天繼續學習 9.1.3 格式字串 例 double d 13.45 int i 45 console.writeline d,i 常見格式說明符 c 數字型別 特點地區的貨幣值 d 只用於整數型別 一般的整數 e 數字型別 科學計數法 f 數字型別 ...

c 學習筆記14,異常處理

異常是程式在執行期間產生的問題。c 異常是指在程式執行時發生的特殊情況,比如嘗試除以零的操作。異常提供了一種轉移程式控制權的方式。c 異常處理涉及到三個關鍵字 try catch throw。throw 當問題出現時,程式會丟擲乙個異常。這是通過使用 throw 關鍵字來完成的。catch 在您想要...