Danh mục

Lập Trình Hướng Đối Tượng (Object-oriented Programming) - ôn tập về con trỏ

Số trang: 5      Loại file: pdf      Dung lượng: 368.98 KB      Lượt xem: 10      Lượt tải: 0    
10.10.2023

Phí lưu trữ: miễn phí Tải xuống file đầy đủ (5 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Làm thế nào để trỏ P đến một ô nhớ nào đó? Làm thế nào để truy nhập đến ô nhớ P trỏ...
Nội dung trích xuất từ tài liệu:
Lập Trình Hướng Đối Tượng (Object-oriented Programming) - ôn tập về con trỏ Con trỏ int x= 361; int *y = &x; Lập trình hướng đối tượng Một con trỏ hay một biến con trỏ là: một biến chiếu đến một ô nhớ. nó lưu vị trí/địa chỉ của ô nhớ đó. Hai ứng dụng chính: Truy nhập gián tiếp Bộ nhớ động Ôn tập về con trỏ Vấn đề kỹ thuật: Nếu P là một biến con trỏ Làm thế nào để trỏ P đến một ô nhớ nào đó? Làm thế nào để truy nhập đến ô nhớ P trỏThao tác con trỏ Ví dụ #include int main() x= 10 { int x = 10; int y = 20; Các ký hiệu, từ khóa: &, *, new, delete y= 20 int *p1, *p2; int X, Y; *p1 = 10 p1 = &x; p2 = &y; int* P; // P is an integer pointer variable *p2 = 20 cout Ký hiệu Sử dụng typedef Lỗi hay gặp khi sử dụng con trỏ. Phân biệt hai dòng sau: Đọc *P là biến mà P trỏ tới int* P, Q; // P is a pointer and Q an int int *P, *Q;// P and Q are both pointers Đọc &X là địa chỉ của X Một cách tránh lỗi là sử dụng lệnh typedef để đặt tên kiểu mới. & là toán tử địa chỉ (address of operator) Ví dụ: * là toán tử thâm nhập (dereferencing operator) typedef double distance; //distance is a new name for double Giả sử P1 = &X và P2 = &Y, thì P1 trỏ tới X và P2 trỏ tới Y distance miles; P1 = P2 Giống như Không tương đương với double miles; *P1 = *P2 Có nghĩa rằng, thay vì viết P1 = P2 có hiệu quả trỏ P1 tới Y,lệnh đó không thay đổi X int *P, *Q; Lệnh *P1 = *P2; tương đương với X = Y; Ta có thể viết typedef int* IntPtr; // new name for pointers to ints IntPtr P, Q; //P and Q are both pointersCấp phát bộ nhớ tĩnh và động Ví dụ(Static and Dynamic Allocation Of Memory) //Program to demonstrate pointers Đoạn trình //and dynamic variables #include int X,Y; // X and Y are integers int main() int *P; // P is an integer pointer variable *p1 = 10 ...

Tài liệu được xem nhiều: