Nguyễn Tấn Trần Minh Khang cho lớp đối tượng CPhanSo.. Ngoài ra, trong khi giải quyết vấn đềnày ta còn sử dụng kỹ thuật hàm bạnfriend function của phương pháp lậptrình hướng đối tượng.
Trang 1LTHĐT Khoa CNTT
Chương 4
SƠ LƯỢC THƯ VIỆN
IOSTREAM.H
Trang 2LTHĐT Khoa CNTT
Chương 04 - 2
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
1 VÍ DỤ DẪN NHẬP 1
Bài toán: Viết lệnh nhập giá trị cho
một số nguyên a và xuất số nguyên
ra màn hình bằng cách sử dụng thưviện iostream.h
Phong cách cũ
1. int a;
2. printf(“Nhap mot so nguyen:”);
3. scanf(“%d”,&a);
4. printf(“So nguyen vua nhap:%d”,a);
Đoạn chương trình với thư viện
Trang 3LTHĐT Khoa CNTT
2 VÍ DỤ DẪN NHẬP 2
sử dụng thư viện iostream.h
Trang 4LTHĐT Khoa CNTT
Chương 04 - 4
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
Trang 5LTHĐT Khoa CNTT
Nhập, xuất một đối tượng phân số với
thư viện iostream.h
Trang 6LTHĐT Khoa CNTT
Chương 04 - 6
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
cho lớp đối tượng CPhanSo
Ngoài ra, trong khi giải quyết vấn đềnày ta còn sử dụng kỹ thuật hàm bạn(friend function) của phương pháp lậptrình hướng đối tượng
Một “hàm bạn” của lớp đối tượngđược phép truy xuất đến tất cả cácthành phần của đối tượng thuộc vềlớp đó bất chấp thành phần được khaibáo trong phạm vi nào
Trang 7LTHĐT Khoa CNTT
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
Trang 8LTHĐT Khoa CNTT
Chương 04 - 8
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
19. friend ostream& operator <<
21. };
Trang 9LTHĐT Khoa CNTT
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
Trang 10LTHĐT Khoa CNTT
Chương 04 - 10
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
19. friend ostream& operator <<
21. };
Trang 11LTHĐT Khoa CNTT
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
Trang 12LTHĐT Khoa CNTT
Chương 04 - 12
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
19. friend ostream& operator <<
21. };
Trang 13LTHĐT Khoa CNTT
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
Trang 14LTHĐT Khoa CNTT
Chương 04 - 14
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
19. friend ostream& operator <<
20. (ostream &os,CPhanSo &x);
21. };
Trang 15LTHĐT Khoa CNTT
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
Trang 16LTHĐT Khoa CNTT
Chương 04 - 16
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
19. friend ostream& operator <<
20. (ostream &os,CPhanSo &x);
21. };
Trang 17LTHĐT Khoa CNTT
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
Trang 18LTHĐT Khoa CNTT
Chương 04 - 18
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
Định nghĩa toán tử vào
1 istream& operator >>(istream &is,
Trang 19LTHĐT Khoa CNTT
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
Trang 20LTHĐT Khoa CNTT
Chương 04 - 20
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
Trang 21LTHĐT Khoa CNTT
4 GIẢI QUYẾT VẤN ĐỀ (tiếp)
17. friend istream& operator >>
18. (istream &is,CPhanSo &x);
Trang 22LTHĐT Khoa CNTT
Chương 04 - 22
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
Trong câu lệnh thứ hai của đoạn
chương trình trên ta nói: hàm
operator >> được gọi thực hiện với 2đối số là cin và đối tượng a
Trong câu lệnh thứ ba của đoạn
chương trình trên ta nói: hàm
operator << được gọi thực hiện với 2đối số là cout và đối tượng a
Trang 23LTHĐT Khoa CNTT
Trong câu lệnh thứ hai của đoạn
chương trình trên ta nói: hàm
Trang 24LTHĐT Khoa CNTT
Chương 04 - 24
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
7 ỨNG DỤNG
nghĩa toán tử vào và
đối tượng CNgay.
Trang 25LTHĐT Khoa CNTT
18. friend istream& operator >>
19. (istream &is,CNgay &x);
Trang 26LTHĐT Khoa CNTT
Chương 04 - 26
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang
Trang 27LTHĐT Khoa CNTT
Trang 28LTHĐT Khoa CNTT
Chương 04 - 28
GV Nguyễn Sơn Hoàng Quốc
ThS Nguyễn Tấn Trần Minh Khang