Danh mục 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 - Ba vấn đề con trỏ trong kế thừa

Số trang: 20      Loại file: ppt      Dung lượng: 767.50 KB      Lượt xem: 11      Lượt tải: 0    
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Trong bài giảng này tập trung trình bày 3 nội dung chủ yếu như sau: Hàm dựng trong kế thừa, Hàm hủy trong kế thừa, ba vấn đề về con trỏ trong kế thừa. Cuối bài giảng còn có bài tập giúp người học hệ thống lại kiến thức đã học. 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 - Ba vấn đề con trỏ trong kế thừaHàm dựng, Hàm hủy,Ba vấn đề con trỏtrong kế thừaPhương pháp lập trình hướng đối tượng. 1Nội dung Hàm dựng trong kế thừa. Hàm hủy trong kế thừa. Ba vấn đề về con trỏ trong kế thừa. Bài tập.Phương pháp lập trình hướng đối tượng. 2Nội dung Hàm dựng trong kế thừa. Hàm hủy trong kế thừa. Ba vấn đề về con trỏ trong kế thừa. Bài tập.Phương pháp lập trình hướng đối tượng. 3Hàm dựng trong kế thừa Trình tự tạo lập đối tượng kế thừa:  Nhà được xây từ móng đến mái.  Khái niệm được định nghĩa từ thấp đến cao.  Đối tượng được tạo lập từ lõi đến vỏ.  Thành phần kế thừa từ lớp cơ sở được tạo trước. Đối tượng kế thừa Đối tượng cơ sở Thành phần cơ sở Thành phần mới Xây móng đến mái Định nghĩa thấp đến cao Tạo lập từ lõi đến vỏPhương pháp lập trình hướng đối tượng. 4Hàm dựng trong kế thừa Thứ tự gọi hàm dựng ở đối tượng kế thừa:  Hàm dựng lớp cơ sở được gọi trước.  Phần lõi cơ sở được tạo trước.  Hàm dựng lớp kế thừa gọi sau.  Phần vỏ mới được tạo sau.  Lớp kế thừa có thể chỉ định hàm dựng tạo phần lõi.  Không chỉ định => hàm dựng mặc định được gọi.Phương pháp lập trình hướng đối tượng. 5Hàm dựng trong kế thừa Ví dụ: class GiaoVien class GVCN : public GiaoVien { { private: private: char *m_strHoTen; char *m_strLopCN; float m_fMucLuong; public: int m_iSoNgayNghi; GVCN() public: GVCN(char *strLopCN); GiaoVien(); GVCN(char *strHoTen, float fMucLuong, GiaoVien(char *strHoTen, int iSoNgayNghi, float fMucLuong, char *strLopCN); int iSoNgayNghi); }; };Phương pháp lập trình hướng đối tượng. 6Hàm dựng trong kế thừa Ví dụ: GVCN::GVCN(char *strLopCN) : GiaoVien(“Minh”, 500000, 0) { m_strLopCN = new char[strlen(strLopCN) + 1]; strcpy(m_strLopCN, strLopCN); } GVCN::GVCN(char *strHoTen, float fMucLuong, int iSoNgayNghi, char *strLopCN) : GiaoVien(strHoTen, fMucLuong, iSoNgayNghi) { m_strLopCN = new char[strlen(strLopCN) + 1]; strcpy(m_strLopCN, strLopCN); } GVCN::GVCN() { GiaoVien() GiaoVien()được đượcgọi gọitrước trước }Phương pháp lập trình hướng đối tượng. 7Nội dung Hàm dựng trong kế thừa. Hàm hủy trong kế thừa. Ba vấn đề về con trỏ trong kế thừa. Bài tập.Phương pháp lập trình hướng đối tượng. 8Hàm hủy trong kế thừa Trình tự hủy đối tượng kế thừa:  Ngược lại với trình tự tạo lập.  Hàm hủy lớp kế thừa được gọi trước.  Phần vỏ bên ngoài được hủy trước.  Hàm hủy lớp kế cơ sở được gọi sau.  Phần lõi cơ sở được hủy sau.  Mỗi lớp chỉ có một hàm hủy Đối tượng kế thừa  Lớp kế thừa không cần Đối tượng cơ sở chỉ định hàm hủy cơ sở. Thành phần cơ sở Thành phần mới Hủy từ vỏ đến lõiPhương pháp lập trình hướng đối tượng. 9Hàm hủy trong kế thừa Ví dụ: GiaoVien::~GiaoVien() { GiaoVien() GiaoVien()được đượcgọi gọisau sau delete m_strHoTen; } GVCN::~GVCN() ~GVCN() ~GVCN()được đượcgọi ...