C++ Vô hiệu hóa
Nhận địa chỉ và giá trị bộ nhớ
Trong ví dụ ở trang trước, chúng ta đã sử dụng biến con trỏ để lấy địa chỉ bộ nhớ của một biến (được sử dụng cùng với toán tử tham chiếu &
). Tuy nhiên, bạn cũng có thể sử dụng con trỏ để lấy giá trị của biến bằng cách sử dụng toán tử *
(toán tử quy định ):
Ví dụ
string food = "Pizza"; // Variable declaration
string* ptr =
&food; // Pointer declaration
//
Reference: Output the memory address of food with the pointer (0x6dfed4)
cout <<
ptr << "\n";
//
Dereference: Output the value of food with the pointer (Pizza)
cout <<
*ptr << "\n";
Hãy tự mình thử » Lưu ý rằng dấu *
có thể gây nhầm lẫn ở đây vì nó thực hiện hai việc khác nhau trong mã của chúng ta:
- Khi được sử dụng trong khai báo (string* ptr), nó tạo ra một biến con trỏ .
- Khi không được sử dụng trong khai báo, nó hoạt động như một toán tử quy chiếu .