Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 32 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
32
Dung lượng
445,5 KB
Nội dung
Lập trình hướng đối tượng Hà Văn Sang Bộ mơn: Tin học TC – KT Khoa: Hệ Thống Thông Tin Kinh tế - Học Viện Tài Chính Tel: 0982.165.568 Email: sanghv@hvtc.edu.vn 23/12/13 04:12 http://www.hvtc.edu.vn/sanghv Website: CHƯƠNG III 23/12/13 04:12 Xây dựng lớp đối tượng a Khai báo class { [quyền truy xuất:] //khai báo thành phần liệu lớp [quyền truy xuất:] //khai báo thành phần hàm lớp }; 3/20 a Khai báo Trong đó: : người dùng đặt tuân theo qui tắc tên Ví dụ: SV, NGUOI, Hoa_Don, ps, Ma_Tran… 4/20 a Khai báo [quyền truy xuất:] Là khả truy xuất thành phần liệu Ngầm định private priate: phạm vi lớp public: nơi đối tượng tồn protected: phạm vi lớp lớp kế thừa 5/20 a Khai báo Thành phần lớp Có thể gồm: Dữ liệu Thuộc tính Phương thức 6/20 a Khai báo Khai báo thành phần Dữ liệu: Tương tự khai báo biến ; Chú ý: không khởi tạo giá trị ban đầu 7/20 a Khai báo Khai báo thành phần Hàm thành phần Cách 1: Khai báo lớp định nghĩa lớp tênlớp::([đối sô]) { // } Cách 2: định nghĩa lớp 8/20 a Khai báo Ví dụ 1: Xây dựng cấu trúc liệu mô tả sinh viên: Dữ liệu: họ tên, ngày sinh, giới tính, Điểm tốn, lý, hóa, Đtb Phương thức: nhập, tính đtb, in Lớp sinh viên 9/20 a Khai báo Ví dụ 2: Xây dựng cấu trúc liệu mô tả hóa đơn: Dữ liệu: mã vật tư, tên vật tư, loại phiếu, ngày lập, khối lượng, đơn giá, thành tiền… Phương thức: nhập, tính thành tiền, in Lớp hóa đơn 10/20 a Hàm khởi tạo (tiếp) Một số hàm khởi tạo: - Hàm khởi tạo mặc định (default constructor) - Hàm khởi tạo chép (copy constructor) Khai báo: (const &) Đối tượng đối tượng có 18/20 b Hàm hủy - Destructor Khai báo: ~(); Chức năng: - Hủy bỏ, giải phóng đối tượng hết phạm vi tồn 19/20 b Hàm hủy (tiếp) Như hàm hủy: Khơng có đối số Khơng có giá trị trả Không định nghĩa lại Trùng tên với lớp có dấu ~ trước Thực số cơng việc trứơc hệ thống giải phóng nhớ Chương trình dịch tự động sinh hàm hủy mặc định 20/20 Nạp chồng toán tử Cú pháp: operator([ds tham số]) Định nghĩa ngồi lớp: ::operator([ds tham số]) { //thân hàm } 21/20 Nạp chồng tốn tử (tiếp) Ví dụ: Nạp chồng toán tử +, * lớp phân số Nạp chồng tốn tử + vector Danh sách tốn tử nạp chồng: + - * / = < > += -= *= /= > = == != = ++ % ~ &= ^= |= && || %= [] () , new delete new[] delete[] & ^ ->* -> 22/20 ! | Nạp chồng tốn tử (tiếp) Chú ý: Chỉ định nghia lại tốn tử Khơng làm thay đổi độ ưu tiên toán tử Với toán tử ngơi: tốn tử bên trái ẩn tốn tử bên phải đối số Do đó: số tham số số toán hạng - 23/20 Nạp chồng toán tử (tiếp) Cách gọi hàm toán tử: Dùng cú pháp thơng thường phép tốn Ví dụ: PS a,b,c; c=a+b; Dùng hàm thành phần đối tượng Ví dụ: PS a,b,c; c=a.operator+(b); 24/20 Bài tập (week 4) • Nạp chồng toán tử tập tuần 25/20 Bài tập (week 3) • Sử dụng TC++ để lập trình: Xây dựng lớp phân số gồm thành phần: -DL: tử số, mẫu số -Pt: nhập, in, tối giản, so sánh ps Hàm main: -Nhập mảng có n phân số (n ; 13/ 20... &) Đối tượng đối tượng có 18/20 b Hàm hủy - Destructor Khai báo: ~(); Chức năng: - Hủy bỏ, giải phóng đối tượng hết phạm vi tồn 19/20 b Hàm hủy (tiếp) Như hàm hủy: Khơng có đối số... cấu trúc liệu mơ tả phân số: Dữ liệu: tử số, mẫu số Phương thức: nhập, tối giản, in Lớp phân số 11/20 b Khai báo đối tượng Cú pháp: ; Ví dụ: khai báo đối tượng sinh