intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Kỹ thuật lập trình: Chương 4 - Trần Quang Hải Bằng

Chia sẻ: Sơn Tùng | Ngày: | Loại File: PDF | Số trang:4

61
lượt xem
2
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Kỹ thuật lập trình - Chương 4: Hàm thành viên" cung cấp cho người học các kiến thức: Tái định nghĩa, đối số mặc nhiên, hàm inline, truyền đối tượng như đối số của hàm, con trỏ *this, hàm thành viên bằng. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Kỹ thuật lập trình: Chương 4 - Trần Quang Hải Bằng

  1. Nội dung Chương 4 • Tái ñịnh nghĩa, ðối số mặc nhiên • Hàm inline HÀM THÀNH VIÊN • Truyền ñối tượng như ñối số của hàm. • Trị trả về của hàm là ñối tượng • Con trỏ *this • Hàm thành viên hằng 1 2 Tái ñịnh nghĩa hàm thành viên Dùng ñối số mặc nhiên • Trong 1 lớp, có thể ñịnh nghĩa các hàm thành viên trùng tên, • Có thể dùng ñối số mặc nhiên cho hàm thành viên. nhưng các hàm này phải khác nhau về tham số. • Tất cả ñối số mặc nhiên ñều phải nằm cuối hàm. Tính ña hình của lập trình hướng ñối tượng 3 4
  2. Hàm inline Truyền ñối tượng như ñối số của hàm • Có 2 cách khai báo hàm inline : • Truyền qua giá trị – Thêm từ khóa inline vào trước hàm thành viên. – Tham số của hàm thành viên có thể có kiểu bất kỳ. – ðịnh nghĩa hàm ngay bên trong khai báo lớp. – Một ñối tượng có thể ñược truyền theo tham số. 5 6 Truyền ñối tượng như ñối số của hàm Truyền ñối tượng như ñối số của hàm • Truyền qua tham chiếu • Truyền qua địa chỉ – Tương tự như truyền qua ñịa chỉ. – Tiết kiệm ô nhớ cho chương trình (hơn truyền qua giá trị). – Có thể làm thay đổi giá trị của đối tượng truyền vào. – ðịnh nghĩa hàm sẽ ñơn giản hơn (như truyền qua giá trị) – Cũng có thể làm thay ñổi giá trị của ñối tượng truyền vào. 7 8
  3. Trị trả về của hàm là ñối tượng Trị trả về của hàm là ñối tượng • Trị trả về truyền qua giá trị • Trị trả về truyền qua ñịa chỉ – Trị trả về của hàm thành viên có thể có kiểu bất kỳ. – Tránh lãng phí bộ nhớ và thời gian gọi hàm. – Một hàm có thể có trị trả về là một ñối tượng. – Sử dụng phải cẩn thận vì có thể gây ra hiệu ứng phụ. 9 10 Trị trả về của hàm là ñối tượng Con trỏ *this • Trị trả về truyền qua tham chiếu • Lưu ñịa chỉ của chính ñối tượng ñang xét. – Tương tự như truyền qua ñịa chỉ • Muốn lấy giá trị của chính ñối tượng: dùng *this. – ða số dùng ñể trả về một ñối tượng toàn cục hay nội dung • Thuộc tính truy cập là private. một con trỏ ñã ñược cấp vùng nhớ trong hàm. class Diem { class ViDu2 { int x, y; int a; public: public: Diem() ViDu2(int x) { a= x; } { x=y=0; } void InDiaChi() Diem(int x, int y) { { cout
  4. Hàm thành viên hằng • Hằng dữ liệu: không thay ñổi giá trị trong khi thực thi. • Hằng ñối tượng: không thay ñổi giá trị các thành phần dữ liệu trong ñối tượng. • Hàm thành viên hằng: – Có thể thao tác trên hằng ñối tượng. – Không làm thay ñổi giá trị dữ liệu của ñối tượng. class Diem { void main() { int x,y; Diem a; public: const Diem c; Diem(); a.Hien(); void Hien() const; a.Doi(5,6); Sai vì void Doi(int, int); c.Hien(); Doi(int,int) }; c.Doi(10,20); không là hàm … … … } hằng 13
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2