Computer >> Máy Tính >  >> Lập trình >> C ++

Sự khác biệt giữa biến con trỏ và biến tham chiếu trong C ++ là gì?

Tài liệu tham khảo

Khi một biến được khai báo là một tham chiếu, nó sẽ trở thành một tên thay thế cho một biến hiện có.

Cú pháp

Type &newname = existing name;

Khởi tạo

Type &pointer;
pointer = variable name;

Con trỏ

Con trỏ được sử dụng để lưu trữ địa chỉ của một biến.

Cú pháp

Type *pointer;

Khởi tạo

Type *pointer; 
pointer = variable name;


Sự khác biệt chính giữa tham chiếu và con trỏ là -

  • Tham chiếu được sử dụng để tham chiếu một biến hiện có với tên khác trong khi con trỏ được sử dụng để lưu trữ địa chỉ của một biến.
  • Các tham chiếu không được gán giá trị null nhưng con trỏ thì có thể.
  • Một biến tham chiếu có thể được tham chiếu bỏ qua theo giá trị trong khi một con trỏ có thể được tham chiếu nhưng chuyển qua tham chiếu
  • Một tham chiếu phải được khởi tạo khi khai báo trong khi nó không cần thiết trong trường hợp con trỏ.
  • Một tham chiếu chia sẻ cùng địa chỉ bộ nhớ với biến ban đầu nhưng cũng chiếm một số không gian trên ngăn xếp trong khi một con trỏ có địa chỉ bộ nhớ và kích thước riêng trên ngăn xếp.