Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Bài giảng Lập trình hướng đối tượng C++ - Chương 5: Hàm xây dựng, hàm hủy và việc khởi tạo đối tượng cung cấp cho người học những kiến thức như: Hàm xây dựng; Hàm hủy; Hàm xây dựng sao chép; Thuộc tính của 1 lớp là đối tượng. Mời các bạn cùng tham khảo! | Chương 5 HÀM XÂY DỰNG HÀM HỦY VÀ VIỆC KHỞI TẠO ĐỐI TƯỢNG 1 Nội dung Hàm xây dựng Hàm hủy Hàm xây dựng sao chép Thuộc tính của 1 lớp là đối tượng 2 Hàm xây dựng Mục đích khởi tạo giá trị ban đầu cho đối tượng Gán giá trị đầu cho các thuộc tính. Cấp vùng nhớ cho con trỏ thành viên. class Diem class PhanSo int x y int tu mau public public Diem int a PhanSo x y a tu 0 mau 1 Diem int h int t PhanSo int x x h y t tu x mau 1 . PhanSo int t int m tu t mau m . 3 Hàm xây dựng Ví dụ class SinhVien class Stack char mssv 8 float ds char hoten int soluong int namsinh int vitri float diemtb public Cấp vùng public Stack int max 10 nhớ SinhVien cho con trỏ strcpy mssv soluong max hoten new char 50 vitri 0 namsinh 1980 ds new diemtb 0 float soluong SinhVien char char int fl Stack float d int m oat int n 4 Hàm xây dựng Nếu không có định nghĩa hàm xây dựng Mặc nhiên sẽ tự động có 1 hàm xây dựng không tham số. Chỉ có 1 cách khởi tạo đối tượng theo dạng không tham số. class Diem void main int x y Diem a public Diem pa new Diem void InDiem Diem ds1 10 void NhapDiem Diem ds2 new void GanGiaTri int Diem 20 int int GiaTriX int GiaTriY 1000H x Không có giá trị y đầu Định nghĩa các hàm a nên dễ gây ra thành viên hiệu ứng phụ5 . Hàm xây dựng Nếu có định nghĩa ít nhất 1 hàm xây dựng Có bao nhiêu hàm xây dựng sẽ có bấy nhiêu cách khởi tạo đối tượng theo dạng đã định nghĩa. void main void main PhanSo a Stack a PhanSo b 3 Stack b 5 PhanSo c 2 5 Stack c 5 PhanSo d 3 Stack pa new Stack PhanSo pa new PhanSo Stack pb new Stack 40 PhanSo pa1 new PhanSo Stack pc new Stack 40 PhanSo pa2 new PhanSo 5 float data 40 PhanSo pb new PhanSo 3 for int i 0 iHàm xây dựng Trình tự thực hiện Đối tượng được tạo ra trước. Hàm xây dựng sẽ gọi sau trên đối tượng. PhanSo c 2 5 tu tu 2 mau mau 5 c c PhanSo 1000H 1000H pa2 new 100 tu 100 tu 0 0 0 0 0 0 mau 0 mau 1 1 1 1 1 PhanSo 5 pa2 pa2 1200H 120 ds ds 0 Stack soluong soluong 5 b 5 0 vitri vitri 7 Hàm hủy Mục đích thu hồi vùng nhớ đã cấp cho con trỏ là dữ liệu thành .