C++編程語言
宏是內聯代碼的原始實現。
#define SQUARE(X) X*X
這並不是以傳遞參數實現的,而是通過文本替代實現的--X是“參數”的符號標記。
在標準C中,傳遞參數主要有2種方式:1.按值傳遞;2.按指針傳遞
在C++中,新增了一種與指針傳遞非常類似的傳遞方式:按引用傳遞。
引用的特點:
1.必須在聲明的時候進行初始化
2.聲明一旦初始化就不能再對引用變量進行修改
3.引用變量並不是新增了一個變量,而是對某個變量取了一個唯一的別名,每個“人”既可以
通過該變量的正式名字找到這個變量,也可以通過這個特殊的別名找到它。
4.引用變量的就是爲了更好地傳遞函數參數。
5.當引用變量作爲參數時,在調用函數時,不能把表達式當作參數傳遞給函數
int a(int& x)
{
return x;
}
int main(void)
{
int y = 1;
int& z = y;
a(1+z);
}
主函數第三行中調用了函數a(),但是參數是一個表達式,該調用是錯誤的。