c 初學者必看 學習的好東西

2021-04-07 06:58:47 字數 2317 閱讀 8688

//函式指標不能用標準轉換成void*.

typedef int (*pfv)();

extern pfv testcases[10];//函式指標陣列

extern void reset(void*);

int main()

//函式過載解析細節

//候選函式:

void f();

void f(int );

void f(double ,double = 3.4);

void f(double char*, char*);   //四個在呼叫點上可見。

int main()

namespace ns;

void takec(c&);

}//cobj的型別是在名字空間ns中被宣告的類c

ns::c  cobj;

int main()

//在實參型別所在的名字空間中宣告的同名函式也是候選函式。

char *format(int );             //全域性域宣告函式被隱藏,

void g()

namespace libs_r_us

char max (char ,char);

void func()

//用using宣告使名字空間函式可見。

//若有char max (char,char);

using libs_r_us::max;//using 宣告,在呼叫點可見。

//分別呼叫三個max函式

void func()

//在全域性域中使用using 指示符

char max (char ,char );

using namespace libs_r_us;//using 指示符

//使三個max都可見

//若void func()

//三個max 都可見

//記住:using指示符使名字空間成員可見,就好像它們是

//在名字空間外,在定義名字空間的位置上被宣告的一樣

//預設實參

extern void ff(int );

extern void ff(long, int =0);

int main()

//typename告訴編譯器是型別表示式

//ok: 關鍵字宣告為inline,放在參數列後面

template

inline                                 //inline或extern

type min(type,type);

//錯誤:inline指示符沒有放在參數列後面

inline

template

type min(array,int);

template

type min(type<&r_array)[size])

template

type min(type(&p_array)[size])

//pf指向int min(int(&)[10])

int (*pf)(int(&)[10]) = &min;

//pf的型別是指向函式的指標

//函式模板在它被呼叫或取其位址時被例項化。

template

type min(type(&r_array)[size])

typedef int(&rai)[10];

typedef double(&rad)[20];

void func(int(*)(rai));

void func(double (*)(rad);

int main()

//取函式模板例項的位址時,必須為模板實參決定乙個唯一的型別或值。

//因為函式func()被過載了,不能為模板引數決定唯一的型別和值。

//呼叫func()無法例項化下面的任何乙個函式。

min(int(*)(int(&)[10]))

min(double(*)(double(&)[20]))

int main()

//模板實參推演

template

type min(type(&r_array)[size])

//min()函式是乙個引用,它指向了乙個type型別的陣列;

void f(int pval[q])

//為了匹配函式引數,函式實參必須也是乙個表示陣列型別的左值。

double da[8] = ;

//模板實參推演期間決定模板實參的型別時,編譯器不考慮函式模板例項的返回型別。

int il = min( da );

//當函式模板被呼叫時,對函式料參型別的檢查決定了模板實參的型別和值,稱為模板實參推演。

C 初學者必看

假設你編寫了乙個c 程式。如何讓它執行起來呢?具體的步驟取決於計算機環境和使用的c 編譯器,但大體如下 1.使用文字編譯器編寫程式,並將其儲存到檔案中,這個檔案就是程式的源 2.編譯源 這意味著執行乙個程式,將源 翻譯為主機使用的內部語言 機器語言,包含了翻譯後的程式的檔案就是程式的目標 objec...

初學者必看內容(三)

初學者必看內容 三 python資料型別轉換 有時候,我們需要對資料內建的型別進行轉換,資料型別的轉換,你只需要將資料型別作為函式名即可。以下幾個內建的函式可以執行資料型別之間的轉換。這些函式返回乙個新的物件,表示轉換的值。函式描述 int x base 將x轉換為乙個整數 long x base ...

MySQL基本用語!初學者必看

1.sql簡介 structured query language結構化查詢語言 dql 資料查詢語言 dcl 資料控制語言 dml 資料操作語言 tpl 事物處理語言 ddl 資料定義語言 ccl 事物控制語言 2.資料定義語言 create database mysql1 character s...