C 語言學習 7

1. typedef void (*Fun)(void); // 定義了一個函數指針

static  Fun   Fun1;//定義一個 Fun 類型的函數指針變量
static  Fun   Fun2[10];//定義一個指針變量數組,每個元素均爲 Fun 類型的函數指針變量

2. 如何使用const? 
(1)修飾一般常量 一般常量是指簡單類型的常量。這種常量在定義時,修飾符const可以用在類型說明符前,也可以用在類型說明符後。 例如: 
int const x=2; 或 const int x=2; 
(2)修飾常數組 定義或說明一個常數組可採用如下格式: 
int const a[5]={1, 2, 3, 4, 5}; 
const int a[5]={1, 2, 3, 4, 5}; 
(3)修飾常對象 常對象是指對象常量,定義格式如下: 
class A; const A a; 
A const a; 定義常對象時,同樣要進行初始化,並且該對象不能再被更新,修飾符const可以放在類名後面,也可以放在類名前面。 
(4)修飾常指針 
const int *A; //const修飾指向的對象,A可變,A指向的對象不可變 
int const *A; //const修飾指向的對象,A可變,A指向的對象不可變 
int *const A; //const修飾指針A, A不可變,A指向的對象可變 
const int *const A;//指針A和A指向的對象都不可變 
(5)修飾常引用 使用const修飾符也可以說明引用,被說明的引用爲常引用,該引用所引用的對象不能被更新。其定義格式如下: 
const double & v; 
(6)修飾函數的常參數 const修飾符也可以修飾函數的傳遞參數,格式如下: 
void Fun(const int Var); 告訴編譯器Var在函數體中的無法改變,從而防止了使用者的一些無意的或錯誤的修改。 
(7)修飾函數的返回值: const修飾符也可以修飾函數的返回值,是返回值不可被改變,格式如下: 
const int Fun1(); const MyClass Fun2(); 
(8)修飾類的成員函數: const修飾符也可以修飾類的成員函數,格式如下: 
class ClassName { 
public: 
int Fun() const; ..... 
}; 這樣,在調用函數Fun時就不能修改類裏面的數據 
(9)在另一連接文件中引用const常量 
extern const int i;//正確的引用 
extern const int j=10;//錯誤!常量不可以被再次賦值 另外,還要注意,常量必須初始化! 例如: const int i=5; 

未完待續。。。

發佈了84 篇原創文章 · 獲贊 63 · 訪問量 37萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章