![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
Bài giảng Phương pháp lập trình hướng đối tượng: Hàm dựng, hàm hủy, hàm toán tử
Số trang: 26
Loại file: ppt
Dung lượng: 1,001.50 KB
Lượt xem: 12
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng này giới thiệu về hàm dựng, hàm hủy, hàm toán tử trong lập trình hướng đối tượng. Ngoài trình bày các kiến thức về ba hàm nêu trên, trong bài giảng này còn cung cấp một số bài tập giúp người học củng cố và nắm chắc kiến thức trong bài giảng. Mời các bạn cùng tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Phương pháp lập trình hướng đối tượng: Hàm dựng, hàm hủy, hàm toán tử Hàm dựng, Hàm hủy, Hàm toán tử Phương pháp lập trình hướng đối tượng . 1 Nội dung Hàm dựng. Hàm hủy. Hàm toán tử. Bài tập. Phương pháp lập trình hướng đối tượng . 2 Nội dung Hàm dựng. Hàm hủy. Hàm toán tử. Bài tập. Phương pháp lập trình hướng đối tượng . 3 Hàm dựng Khi đối tượng vừa được tạo: Giá trị các thuộc tính bằng bao nhiêu? Đối tượng cần có thông tin ban đầu. Giải pháp: Xây dựng phương thức cung cấp thông tin. Người dùng quên gọi?! “Làm khai sinh” cho đối tượng! PhanSo HocSinh Tửsố?? Họ tên?? Mẫu số?? Điểm văn?? Điểm toán?? Hàm dựng ra đời!! Phương pháp lập trình hướng đối tượng . 4 Hàm dựng Tính chất hàm dựng (constructor): Bắt buộc gọi khi tạo đối tượng. Có thể nạp chồng nhiều hàm dựng. Trong C++, hàm dựng có tên trùng tên lớp. class PhanSo void main() { { private: PhanSo p1(1, 2); int m_tuSo; PhanSo p2(2, 3); int m_mauSo; PhanSo *p3 = new PhanSo(2, 3); public: } PhanSo(int tuSo, int mauSo); PhanSo(int giaTri); }; Phương pháp lập trình hướng đối tượng . 5 Hàm dựng Hàm dựng mặc định (default constructor): Không có tham số. Dùng tạo đối tượng với thông tin mặc định. Lớp không có hàm dựng. Trình biên dịch cung cấp. class PhanSo { void main() private: { int m_tuSo; PhanSo p; int m_mauSo; PhanSo q = new PhanSo; public: } PhanSo(); }; Phương pháp lập trình hướng đối tượng . 6 Hàm dựng Hàm dựng sao chép (copy constructor): Có tham số là đối tượng cùng lớp. Dùng tạo đối tượng từ đối tượng cùng loại. Lớp không có hàm dựng sao chép. Trình biên dịch cung cấp. class PhanSo void main() { { private: PhanSo p1(1, 2); int m_tuSo; PhanSo p2(p1); int m_mauSo; PhanSo p3 = p2; public: } PhanSo(const PhanSo &p); }; Phương pháp lập trình hướng đối tượng . 7 Hàm dựng Dr. Guru khuyên: Một lớp nên có tối thiểu 3 hàm dựng: Hàm dựng mặc định. Hàm dựng có đầy đủ tham số. Hàm dựng sao chép. class PhanSo { private: int m_tuSo; int m_mauSo; public: PhanSo(); PhanSo(int tuSo, int mauSo); PhanSo(const PhanSo &p); }; Phương pháp lập trình hướng đối tượng . 8 Nội dung Hàm dựng. Hàm hủy. Hàm toán tử. Bài tập. Phương pháp lập trình hướng đối tượng . 9 Hàm hủy Vấn đề rò rỉ bộ nhớ (memory leak): Khi hoạt động, đối tượng có cấp phát bộ nhớ. Khi hủy đi, bộ nhớ không được thu hồi!! Giải pháp: Xây dựng phương thức thu hồi. Người dùng quên gọi! Làm “khai tử” cho đối tượng. HocSinh Rò Ròrỉrỉbộ bộnhớ!! nhớ!! Họ tên Điểm văn Điểm toán Thu hồi Hàm hủy vào cuộc!! Phương pháp lập trình hướng đối tượng . 10 Hàm hủy Tính chất hàm hủy (destructor): Tự động gọi khi đối tượng bị hủy. Mỗi lớp có duy nhất một hàm hủy. Trong C++, hàm hủy có tên ~ class HocSinh { void main() private: { char *m_hoTen; HocSinh h; float m_diemVan; HocSinh *p = new HocSinh; float m_diemToan; delete p; public: } ~HocSinh() { delete m_hoTen; } }; Phương pháp lập trình hướng đối tượng . 11 Nội dung Hàm dựng. Hàm hủy. Hàm toán tử. Bài tập. Phương pháp lập trình hướng đối tượng . 12 Hàm toán tử Khái niệm hàm toán tử: Có thể dùng toán tử đặt tên hàm? Trong C++, dùng từ khóa operator. PhanSo operator +(const PhanSo &p1, const PhanSo &p2); Hệ quả? Định nghĩa lại cách thực hiện toán tử. PhanSo p1, p2; PhanSo p3 = p1 + p2; Định nghĩa nhiều cách thực hiện khác nhau cho toán tử bằng nạp chồng hàm. PhanSo operator +(const PhanSo &p, int so); float opeartor +(const PhanSo &p, float so); Phương pháp lập trình hướng đối tượng . 13 Hàm toán ...
Nội dung trích xuất từ tài liệu:
Bài giảng Phương pháp lập trình hướng đối tượng: Hàm dựng, hàm hủy, hàm toán tử Hàm dựng, Hàm hủy, Hàm toán tử Phương pháp lập trình hướng đối tượng . 1 Nội dung Hàm dựng. Hàm hủy. Hàm toán tử. Bài tập. Phương pháp lập trình hướng đối tượng . 2 Nội dung Hàm dựng. Hàm hủy. Hàm toán tử. Bài tập. Phương pháp lập trình hướng đối tượng . 3 Hàm dựng Khi đối tượng vừa được tạo: Giá trị các thuộc tính bằng bao nhiêu? Đối tượng cần có thông tin ban đầu. Giải pháp: Xây dựng phương thức cung cấp thông tin. Người dùng quên gọi?! “Làm khai sinh” cho đối tượng! PhanSo HocSinh Tửsố?? Họ tên?? Mẫu số?? Điểm văn?? Điểm toán?? Hàm dựng ra đời!! Phương pháp lập trình hướng đối tượng . 4 Hàm dựng Tính chất hàm dựng (constructor): Bắt buộc gọi khi tạo đối tượng. Có thể nạp chồng nhiều hàm dựng. Trong C++, hàm dựng có tên trùng tên lớp. class PhanSo void main() { { private: PhanSo p1(1, 2); int m_tuSo; PhanSo p2(2, 3); int m_mauSo; PhanSo *p3 = new PhanSo(2, 3); public: } PhanSo(int tuSo, int mauSo); PhanSo(int giaTri); }; Phương pháp lập trình hướng đối tượng . 5 Hàm dựng Hàm dựng mặc định (default constructor): Không có tham số. Dùng tạo đối tượng với thông tin mặc định. Lớp không có hàm dựng. Trình biên dịch cung cấp. class PhanSo { void main() private: { int m_tuSo; PhanSo p; int m_mauSo; PhanSo q = new PhanSo; public: } PhanSo(); }; Phương pháp lập trình hướng đối tượng . 6 Hàm dựng Hàm dựng sao chép (copy constructor): Có tham số là đối tượng cùng lớp. Dùng tạo đối tượng từ đối tượng cùng loại. Lớp không có hàm dựng sao chép. Trình biên dịch cung cấp. class PhanSo void main() { { private: PhanSo p1(1, 2); int m_tuSo; PhanSo p2(p1); int m_mauSo; PhanSo p3 = p2; public: } PhanSo(const PhanSo &p); }; Phương pháp lập trình hướng đối tượng . 7 Hàm dựng Dr. Guru khuyên: Một lớp nên có tối thiểu 3 hàm dựng: Hàm dựng mặc định. Hàm dựng có đầy đủ tham số. Hàm dựng sao chép. class PhanSo { private: int m_tuSo; int m_mauSo; public: PhanSo(); PhanSo(int tuSo, int mauSo); PhanSo(const PhanSo &p); }; Phương pháp lập trình hướng đối tượng . 8 Nội dung Hàm dựng. Hàm hủy. Hàm toán tử. Bài tập. Phương pháp lập trình hướng đối tượng . 9 Hàm hủy Vấn đề rò rỉ bộ nhớ (memory leak): Khi hoạt động, đối tượng có cấp phát bộ nhớ. Khi hủy đi, bộ nhớ không được thu hồi!! Giải pháp: Xây dựng phương thức thu hồi. Người dùng quên gọi! Làm “khai tử” cho đối tượng. HocSinh Rò Ròrỉrỉbộ bộnhớ!! nhớ!! Họ tên Điểm văn Điểm toán Thu hồi Hàm hủy vào cuộc!! Phương pháp lập trình hướng đối tượng . 10 Hàm hủy Tính chất hàm hủy (destructor): Tự động gọi khi đối tượng bị hủy. Mỗi lớp có duy nhất một hàm hủy. Trong C++, hàm hủy có tên ~ class HocSinh { void main() private: { char *m_hoTen; HocSinh h; float m_diemVan; HocSinh *p = new HocSinh; float m_diemToan; delete p; public: } ~HocSinh() { delete m_hoTen; } }; Phương pháp lập trình hướng đối tượng . 11 Nội dung Hàm dựng. Hàm hủy. Hàm toán tử. Bài tập. Phương pháp lập trình hướng đối tượng . 12 Hàm toán tử Khái niệm hàm toán tử: Có thể dùng toán tử đặt tên hàm? Trong C++, dùng từ khóa operator. PhanSo operator +(const PhanSo &p1, const PhanSo &p2); Hệ quả? Định nghĩa lại cách thực hiện toán tử. PhanSo p1, p2; PhanSo p3 = p1 + p2; Định nghĩa nhiều cách thực hiện khác nhau cho toán tử bằng nạp chồng hàm. PhanSo operator +(const PhanSo &p, int so); float opeartor +(const PhanSo &p, float so); Phương pháp lập trình hướng đối tượng . 13 Hàm toán ...
Tìm kiếm theo từ khóa liên quan:
Phương pháp lập trình hướng đối tượng Lập trình hướng đối tượng Bài giảng Lập trình hướng đối tượng Tính chất hàm dựng Tính chất hàm hủy Hàm toán tửTài liệu liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 282 0 0 -
101 trang 205 1 0
-
14 trang 137 0 0
-
Giáo trình lập trình hướng đối tượng - Lê Thị Mỹ Hạnh ĐH Đà Nẵng
165 trang 122 0 0 -
Giáo trình Phân tích, thiết kế hướng đối tượng với UML: Phần 1 - Trường ĐH Công nghiệp Quảng Ninh
111 trang 98 0 0 -
Giáo trình Lập trình Windows 1 - Trường CĐN Đà Lạt
117 trang 98 0 0 -
265 trang 89 0 0
-
Giáo trình Lập trình hướng đối tượng với Java: Phần 2 - Trần Thị Minh Châu, Nguyễn Việt Hà
141 trang 79 0 0 -
33 trang 71 0 0
-
Ngôn ngữ lập trình C# 2005 - Tập 3: Lập trình hướng đối tượng (Phần 1)
196 trang 52 0 0