Tham chiếu
Một tham chiếu có thể được coi là một con trỏ không đổi (đừng nhầm với con trỏ tới một giá trị không đổi) luôn trỏ đến (tham chiếu) cùng một đối tượng. Chúng được khai báo bằng ký hiệu & (dấu và).
Khai báo và khởi tạo
Để khai báo một tham chiếu, hãy sử dụng ký hiệu & theo sau là loại biến và tên của tham chiếu. Lưu ý rằng bạn phải khởi tạo một tham chiếu khi bạn khai báo nó.
intvar = 10; // Khai báo một biến số nguyên
int& ref = var; // Khai báo một tham chiếu "trỏ tới" var
Cách sử dụng
Bạn có thể sử dụng tham chiếu giống như bạn sử dụng biến ban đầu. Khi bạn thay đổi giá trị của tham chiếu, giá trị của biến ban đầu cũng thay đổi, vì cả hai đều chia sẻ cùng một vị trí bộ nhớ.
biến = 20; // Đặt giá trị của var thành 20
cout << ref << endl; // Đầu ra 20
tham chiếu = 30; // Đặt giá trị của ref thành 30
cout << var << endl; // Đầu ra 30
Thông số hàm
Bạn có thể sử dụng tham chiếu làm tham số hàm để tạo bí danh cho đối số. Điều này thường được thực hiện khi bạn cần sửa đổi biến ban đầu hoặc khi chuyển một đối tượng có kích thước đáng kể để tránh chi phí sao chép.
void swap(int& a, int& b) {
int temp = a;
a = b;
b = temp;
}
int main() {
int x = 5, y = 10;
cout << "Before Swap: x = " << x << " y = " << y << endl; // đầu ra 5 10
swap(x, y);
cout << "After Swap: x = " << x << " y = " << y << endl; // đầu ra 10 5
}