Thắc mắc về & trong c++

Mình gặp khó khắn để hiểu đoạn code này:
int &res = f[mask];
Mọi người giải thích cách ý nghĩa của việc & và ko thêm, mục đích của việc dùng & là gì với.
Cảm ơn .

Đầu tiên mask sẽ được lấy giá trị, sau đó res sẽ là một tên khác (alias).của phần tử ấy. Tức là tác động lên res là tác động lên phần tử kia của f, và ngược lại.

1 Like

Hi Nguyen Minh.
Bạn đọc các tài liệu về tham chiếu.

Ban đầu mình nghĩ cái đó là gắn địa chỉ của res = f[mask] nhưng mình ko biết điểm khác nhau giữa việc thêm và ko thêm. Bạn giải thích rõ hơn cho mình với

Nếu chỉ là int thì chỉ có giá trị giống nhau mà thôi, chứ vẫn là hai slot.
Nhưng khi đã khai báo là int& thì như hai mà một, và không thể thay đổi (rebind) được. res sẽ gắn chặt vào f[mask].

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?