Khoanglang89
Bạn hãy đăng nhập hoặc đăng ký
Khoanglang89

NHẬN THIẾT KẾ WEBSITE/ SOFTWARE - LÀM ĐỒ ÁN TỐT NGHIỆP, ĐỒ ÁN CHUYÊN MÔN NGÀNH CÔNG NGHỆ THÔNG TIN


You are not connected. Please login or register

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down  Thông điệp [Trang 1 trong tổng số 1 trang]

1 Lớp và đối tượng – Phần 3 on Fri Nov 02, 2012 12:54 pm

LostSoul89

avatar

Admin
Admin
Loading
Lớp và đối tượng – Phần 3













Trong
phương thức này chúng ta sử dụng tên các thuộc tính x, y và m một cách
đơn độc. Điều này có vẻ như mâu thuẫn với quy tắc sử dụng thuộc tính nêu
trong mục trước. Thực tế C++ đã ngầm định sử dụng một con trỏ đặc biệt
với tên gọi this trong các phương thức trên. Các thuộc tính viết trong
phương thức được hiểu là thuộc một đối tượng do con trỏ this trỏ tới.














c/- Con trỏ đối tượng

Con trỏ đối tượng dùng để chứa địa chỉ của biến, mảng đối tượng. Nó được khai báo như sau:

Tên_lớp *con trỏ;

Ví dụ dùng lớp DIEM có thể khai báo:




và có thể thực hiện các câu lệnh:




Để sử dụng thuộc tính của đối tượng thông qua con trỏ, ta viết như sau:

Tên_con_trỏ → Tên_thuộc_tính

Chú ý: Nếu con trỏ chứa địa chỉ đầu của mảng, có thể dùng con trỏ như tên mảng.

Như vậy sau khi thực hiện các câu lệnh trên thì:

p1 → x và d2.x là như nhau

p2.y và d[i].y là như nhau

Từ đó ta có quy tắc sử dụng thuộc tính: Để sử dụng một thuộc tính của
đối tượng ta phải dùng phép . hoặc phép →. Trong chương trình, không
cho phép viết tên thuộc tính một cách đơn độc mà phải đi kèm tên đối
tượng hoặc tên con trỏ theo các mẫu sau:




Chương trình dưới đây cũng sử dụng lớp DIEM để nhập một dãy điểm,
hiển thị và ẩn các điểm vừa nhập. Chương trình dùng một con trỏ kiểu
DIEM và dùng toán tử new để tạo ta một dãy đối tượng










3/- Đối của phương thức, con trỏ this
3.1/- Con trỏ this là đối thứ nhất của phương thức

Chúng ta hãy xem lại phương thức nhapsl của lớp DIEM




Trong phương thức này chúng ta sử dụng tên các thuộc tính x, y và m
một cách đơn độc. Điều này có vẻ như mâu thuẫn với quy tắc sử dụng thuộc
tính nêu trong mục trước. Thực tế C++ đã ngầm định sử dụng một con trỏ
đặc biệt với tên gọi this trong các phương thức trên. Các thuộc tính
viết trong phương thức được hiểu là thuộc một đối tượng do con trỏ this
trỏ tới. Do đó, nếu tường minh hơn, phương thức nhapsl() có thể được
viết dưới dạng tương đương như sau:




Như vậy có thể kết luận rằng: Phương thức bao giờ cũng có ít nhất một
đối là con trỏ this và nó luôn luôn là đối đầu tiên của phương thức.

3.2/- Tham số ứng với đối con trỏ this

Xét một lời gọi tới phương thức nhapsl() :




Trong trường hợp này tham số truyền cho con trỏ this chính là địa chỉ của d1:




Do đó:




Như vậy câu lệnh:d1.nhapsl() ;sẽ nhập dữ liệu cho các thuộc tính của đối tượng d1. Từ đó có thể rút ra kết luận sau:

Tham số truyền cho đối con trỏ this chính là địa chỉ của đối tượng đi kèm với phương thức trong lời gọi phương thức.

[i]Hết phần 3




Nguồn: Internet

Xem lý lịch thành viên http://khoanglang89.forumvi.com

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang  Thông điệp [Trang 1 trong tổng số 1 trang]

Bài viết mới cùng chuyên mục

    Bài viết liên quan vớiLớp và đối tượng – Phần 3

      Permissions in this forum:
      Bạn không có quyền trả lời bài viết