Khai báoclass { [quyền truy xuất:] //khai báo các thành phần dữ liệu của lớp [quyền truy xuất:] //khai báo các thành phần hàm của lớp}; 1.. Khai báo thành phần Dữ liệu và thuộc tính: T
Trang 3 Đối tượng : Một sự vật, hiện tượng trong thế
Trang 4a Khai báo
class <tên_lớp>
{
[quyền truy xuất:]
//khai báo các thành phần dữ liệu của lớp
[quyền truy xuất:]
//khai báo các thành phần hàm của lớp};
1 Xây dựng lớp và đối
tượng
Trang 5Trong đó:
5/20
<tên_lớp>:
do người dùng đặt
tuân theo các qui tắc về tên
Ví dụ: SV, NGUOI, Hoa_Don, ps, Ma_Tran…
a Khai báo
Trang 6[ quyền truy xuất:]
a Khai báo
Trang 8Khai báo thành phần
Dữ liệu và thuộc tính:
Tương tự như khai báo biến
<kiểu dữ liệu > <tên_thành_phần>;
Chú ý: không được khởi tạo giá trị ban đầu
a Khai báo
Trang 10Ví dụ 1:
10
Xây dựng cấu trúc dữ liệu mô tả sinh viên:
Dữ liệu: họ tên, ngày sinh, giới tính, Điểm toán, lý, hóa, Đtb
Phương thức: nhập, tính đtb, in
Lớp sinh viên
a Khai báo
Trang 11a Khai báo
Trang 13Ví dụ 3:
13 /20
Xây dựng cấu trúc dữ liệu mô tả các phân số:
Dữ liệu: tử số, mẫu số
Phương thức: nhập, tối giản, in
Lớp các phân số
a Khai báo
Trang 14B KHAI BÁO ĐốI TƯợNG
Trang 16C TRUY XUấT THÀNH PHầN
Thành phần hàm
16 /20
Trang 17Một đối tượng thường có 4 kiểu phương thức cơ bản
17/20
Các phương thức khởi tạo: Constructor
Các phương thức truy vấn: Queries
Các phương thức cập nhập: Updates
Các phương thức hủy: Destructor
2 Các phương thức
Trang 19Như vậy hàm khởi tạo:
19 /20
Có với mọi lớp
Tên hàm giống tên lớp
Không có kiểu trả về
Không có giá trị trả về
Nếu không xây dựng thì chương trình tự
động sinh hàm khởi tạo mặc định
Được gọi tự động khi khai báo thể hiện của lớp
a Hàm khởi tạo
Trang 21Như vậy hàm hủy:
21 /20
Không có đối số
Không có giá trị trả về
Không định nghĩa lại
Trùng tên với lớp và có dấu ~ ở trước
Thực hiện một số công việc trứơc khi hệ thống giải phóng bộ nhớ
Chương trình dịch tự động sinh hàm hủy mặc định
b Hàm hủy
Trang 22Cú pháp:
22 /20
<kiểu trả về>operator<tên toán tử>([ds
tham số])Định nghĩa ngoài lớp:
<kiểu trả về><tên_lớp>::operator<tên toán tử>([ds tham số])
Trang 23Ví dụ:
23 /20
Nạp chồng toán tử +, * của lớp phân số
delete new[] delete[]
3 Qúa tải toán tử
Trang 25 Sử dụng TC++ để lập trình:
1 Xây dựng lớp phân số gồm các thành phần: -DL: tử số, mẫu số
-Pt: nhập, in, tính tổng, tính tích của hai phân
số.
Hàm main:
-Nhập 2 phân số
-In ra phân số tối giản
-Tính và in ra tổng, tích, thương của hai phân
số
25 /20
Trang 26 Sử dụng TC++ để lập trình:
2 Xây dựng lớp ma trận gồm các thành phần: -DL: số dòng, số cột
-Pt: nhập, in, kiểm tra ma trận có là đơn vị
Trang 27 Sử dụng TC++ để lập trình:
3 Xây dựng lớp Nhân viên gồm các thành phần:
-DL: họ tên, mã nv, ngày, tháng, nam sinh, giới tính,
hệ số lương.
-Pt: nhập, xuất danh sách nhân viên
Hàm main:
-Nhập danh sách nhân viên
- Xuất danh sách nhân viên
Lưu ý: Xuất ngày tháng năm sinh dưới dạng
ngày/tháng/năm.
27 /20
Trang 28 Sử dụng TC++ để lập trình:
4 Xây dựng lớp hóa đơn gồm các thành phần:
-DL: mã vật tư, tên vật tư, ngày lập, số lượng, đơn giá, thành tiền
(thành tiền = số lượng*đơn giá).
-Pt: nhập, in, tính thành tiền
Hàm main:
-Nhập hóa đơn
-Tính thành tiền cho các hóa đơn
-In danh sách hóa đơn
28