Giáo trình Lập trình hướng đối tượng - Đặng Ngọc Hoàng Thanh

Tóm tắt Giáo trình Lập trình hướng đối tượng - Đặng Ngọc Hoàng Thanh: ...: đầu tiên nhập vào giá trị cho biến n. N nhập vào ở đ}y l{ 5. Vịng lặp while kiểm tra điều kiện n>0. Điều kiện n{y đúng, nên c|c lệnh trong vịng lặp sẽ được thực hiện. Nĩ sẽ in ra giá trị của n l{ 5. Sau đĩ, gi| trị của n giảm đi 1, tức là n = 4. Vịng lặp lại tiếp tục thực hiện, vì n>0 ...qua ngoại lệ (nothrow bad_alloc). Bằng việc sử dụng một ngoại lệ là bad_alloc, hệ thống sẽ bỏ qua khi quá trình cung ứng ơ nhớ bị thất bại (theo mặc định). Ngoại lệ là một tính năng mạnh mẽ của C++, chúng ta sẽ tìm hiểu chi tiết ở những chương sau. Nếu gặp một ngoại lệ, chúng ta cần cho biết...của lớp B. Ví dụ Kết quả #include using namespace std; Square: 5x5 Đặng Ngọc Hoàng Thành T r a n g | 144 C + + class Rectangle { private: int w; int h; public: Rectangle(int, int); friend class MakeSquare; }; class MakeSquare{ private: int w; int h;...

pdf208 trang | Chia sẻ: havih72 | Lượt xem: 357 | Lượt tải: 1download
Nội dung tài liệu Giáo trình Lập trình hướng đối tượng - Đặng Ngọc Hoàng Thanh, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
 cho đối tượng KhachHang để hủy bỏ việc mua h{ng. Trong chương 
trình chính, bạn hãy tạo con trỏ đối tượng để thực hiện h{nh động mua 
h{ng v{ h{nh động hủy bỏ. 
2. Xây dựng lớp điểm Point và lớp hình trịn Round. Sử dụng hàm random 
để tạo tọa độ ngẫu nhiên cho một đối tượng điểm trong hàm tạo của đối 
tượng điểm. Cho trước tọa độ tâm của đường trịn, bán kính của nĩ. Hãy 
đưa ra c|c kết luận về một điểm được khởi tạo nằm trong hay ngo{i đường 
trịn. Đ}y l{ phương thức thành viên của lớp hình trịn. 
Khuyến khích: Bạn nên sử dụng hàm bạn và lớp bạn. 
BÀI THỰC HÀNH SỐ 4 
Chồng chất Tốn tử trong C++ 
Đặng Ngọc Hoàng Thành 
T r a n g | 195 
C
+
+
Xây dựng 2 lớp số phức và lớp phân số. Sử dụng chồng chất tốn tử để thực 
hiện các thao tác tính tốn sau: 
- Lớp số phức: phương thức khởi tạo (hoặc phương thức setter), phương 
thức sao chép hàm tạo, phương thức + (cộng hai số phức), - (trừ hai số 
phức), * (nhân hai số phức), / (chia hai số phức) v{ phương thức tính 
modul và argument của số phức. Xây dựng hàm chồng chất tốn tử 
nhập/xuất dữ liệu với lớp số phức này. 
- Lớp phân số: phương thức khởi tạo, phương thức sao chép hàm tạo, 
phương thức + (cộng hai phân số), phương thức – (trừ hai phân số), 
phương thức * (nhân hai phân số), phương thức / (chia hai phân số). Xây 
dựng hàm chồng chất tốn tử nhập/xuất dữ liệu với lớp phân số này. 
BÀI THỰC HÀNH SỐ 5 
Kĩ thuật thừa kế trong C++ 
Xây dựng lớp HinhKhoi, chứa thuộc tính chiều cao (chieucao). Xây dựng 
hàm tạo tương ứng v{ phương thức sao chép hàm tạo. 
Xây dựng lớp HinhKhoi1 thừa kế từ lớp HinhKhoi. Bổ sung thêm thuộc tính 
chiều dài (chieudai). Bổ sung hàm tạo v{ phương thức sao chép hàm tạo. 
Xây dựng tiếp hàm tính thể tích cho HinhKhoi1 (bằng chieucao*chieudai2). 
Xây dựng lớp lớp HinhKhoi2 thừa kế từ lớp HinhKhoi1. Bổ sung thêm thuộc 
tính chiều rộng (chieurong). Bổ sung hàm tạo v{ phương thức sao chép 
hàm tạo. Quá tải hàm tính thể tích cho HinhKhoi2 (bằng 
chieucao*chieudai*chieurong). 
Xây dựng lớp HinhKhoi3 thừa kế từ lớp HinhKhoi. Bổ sung thêm thuộc tính 
bán kính (bankinh). Bổ sung hàm tạo v{ phương thức sao chép hàm tạo. 
Xây dựng hàm tính thể tích cho HinhKhoi3 (bằng chieucao*Pi*bankinh2). 
BÀI THỰC HÀNH SỐ 6 
Lớp cơ sở trìu tượng trong C++ 
Đặng Ngọc Hoàng Thành 
T r a n g | 196 
C
+
+
Xây dựng một lớp cơ sở trìu tượng Vector chứa ba phương thức ảo thuần 
túy: TinhDoDai (tính độ dài), SinGoc (tính sin của gĩc giữa hai Vector), 
TrucGiao (tìm vector trực giao – tức vector vuơng gĩc với vector trên), hai 
thuộc tính thành viên là tọa độ x v{ y, hai phương thức getter và setter 
(khơng sử dụng hàm tạo trong trường hợp này, vì lớp trìu tượng khơng cĩ 
khả năng tạo ra một sự thể hiện, và hàm tạo cũng khơng được thừa kế). 
Xây dựng lớp Vector2D thừa kế từ lớp cơ sở trìu tượng Vector để thực thi 
c|c phương thức ảo thuần túy nêu trên. 
Xây dựng lớp Vector3D thừa kế từ lớp cơ sở trìu tượng Vector (bổ sung 
thêm tọa độ z v{ c|c phương thức getter, setter tương ứng) để thực thi các 
phương thức ảo thuần túy nêu trên. 
Trong đĩ, Vector2D l{ vector 2 chiều (chỉ cĩ hai tọa độ x và y); Vector3D là 
vector 3 chiều (cĩ ba tọa độ x, y và z). 
THANG ĐIỂM ĐÁNH GIÁ KĨ NĂNG 
Bài thực hành số 1 2 3 4 5 6 
Điểm 20 15 20 15 20 10 
Ngưỡng đạt 60-70 
Cộng điểm 70-80 80-90 90-100 
Quy đổi +1 +1.5 +2 
- Mỗi bài thực hành cĩ thể thực hiện ở nhà hoặc trên lớp, nhưng phải nộp 
b{i đúng thời hạn. 
- Hạn nộp mỗi bài thực h{nh tương ứng với buổi thực hành. Ví dụ: Bài thực 
hành số 1 phải nộp đúng hạn vào buổi thứ nhất (mới đạt điểm tối đa). Nếu 
muộn một buổi, trừ đi 5 điểm. Nếu nộp tất cả các bài vào buổi cuối cùng, thì 
tối đa chỉ đạt Ngưỡng Đạt. 
- Điểm tổng kết mơn học gồm cĩ 4 cột điểm qu| trình v{ 1 điểm thi. Điểm 
Quá trình 1 = Điểm chuyên cần; Điểm Quá trình 2, Điểm Quá trình 3 sẽ 
tương ứng với 2 bài trắc nghiệm; Điểm Quá trình 4 = Điểm Thực hành/10. 
Điểm thi cuối cùng sẽ bằng kết quả thi đạt được cộng thêm điểm Quy đổi. 
Điểm tổng kết sẽ được tính theo cơng thức: 
( )
Đặng Ngọc Hoàng Thành 
T r a n g | 197 
C
+
+
BÀI TẬP NÂNG CAO 
Bài tập 1. 
Xây dựng c|c h{m để tính các tổng sau đ}y: 
 ( ) 
 ( ) 
 ( ) 
Trong đĩ: n , x và k là các tham số nhập vào từ bàn phím. 
Bài tập 2. 
Khai báo chuỗi kí tự bằng cách sử dụng con trỏ. Sau đĩ x}y dựng c|c h{m để 
thực hiện các câu sau: 
- Đếm số kí tự cĩ giá trị là a. 
- Đảo xâu kí tự. 
- Đảo từ. 
- Đếm số từ. 
- Nhĩm các kí tự cùng loại. Ví dụ: 
Xâu ban đầu: aaabbbaacbd 
Xâu in ra: 5a4b1c1d 
- Thuật tốn nén dữ liệu RLE (Run length Encoding) là thuật tốn nén 
khơng mất dữ liệu lossless. Nĩ được sử dụng để nén ảnh đối với định dạng 
bmp. Thuật tốn RLE sẽ thực hiện đếm số kí tự giống nhau và liên tiếp, sau 
Đặng Ngọc Hoàng Thành 
T r a n g | 198 
C
+
+
đĩ, sẽ thay thế tồn bộ dãy kí tự giống nhau này bằng số kí tự đếm được 
sau đĩ l{ kí tự tương ứng. Ví dụ: 
Xâu ban đầu: aaaabbbbcdddAA 
Xâu sau khi nén: 4a4b1c3d2A 
+ Hãy xây dựng h{m RLE để nén dữ liệu. Với dữ liệu nhập vào từ bàn phím. 
+ Hãy xây dựng hàm IRLE để giải nén dữ liệu. Với dữ liệu nhập vào từ bàn 
phím. 
Bài tập 3. 
Xây dựng các hàm thực hiện các chức năng sau đ}y trên mảng một chiều 
bằng hai cách: khai báo theo kiểu thơng thường và khai báo bằng con trỏ. 
- Hàm nhập dữ liệu cho mảng 1 chiều. 
- Hàm xuất dữ liệu cho mảng 1 chiều. 
- Hàm tính tổng các phần tử của mảng. 
- Hàm tính tổng các phần tử của mảng là số nguyên tố. 
- Hàm tính tổng các phần tử của mảng là số chính phương. 
- Hàm tính tổng các số nguyên tố của mảng lớn hơn 10 và nhỏ hơn 100. 
- Hàm tính tổng các phần tử của mảng là số chính phương chẵn. 
- Hàm đếm số phần tử của mảng là số nguyên tố. 
- Hàm đếm số phần tử của mảng là số chính phương. 
- Hàm đếm số phần tử của mảng là số nguyên tố lớn hơn 10 v{ nhỏ hơn 50. 
- Hàm đếm số phần tử của mảng là số chính phương chẵn. 
- Hàm tìm kiếm chỉ số phần tử cĩ giá trị x của mảng. 
- Hàm tính giá trị trung bình của mảng. 
- Hàm tìm chỉ số của phần tử cĩ giá trị nhỏ nhất. 
- Hàm tìm chỉ số của phần tử cĩ giá trị lớn nhất. 
Đặng Ngọc Hoàng Thành 
T r a n g | 199 
C
+
+
- Hàm sắp xếp mảng theo thứ tự tăng dần (cĩ thể sử dụng thuật tốn sắp 
xếp bất kì). 
- Hàm tính giá trị trung bình của các phần tử của mảng cĩ giá trị chẵn. 
- Hàm dồn tất cả các phần tử chẵn về một phía, các phần tử lẻ về một phía. 
Ví dụ, mảng ban đầu là: 1 4 5 6 2 3 thì kết quả sẽ là 1 5 3 4 6 2. 
- H{m x|c định phần tử cĩ giá trị gần với giá trị trung bình của mảng nhất. 
- H{m đẩy các phần tử của mảng lên n vị trí. Ví dụ mảng ban đầu là 1 3 2 5 4 
7 9. Nếu n = 2, thì mảng thu được sẽ là 9 7 1 3 2 5 4. 
Bổ sung hàm main v{ c|c thư viện để nhận được một chương trình hồn 
chỉnh. Các hàm cần được khai báo theo prototype. 
Bài tập 4. 
Xây dựng c|c h{m để thực hiện các chức năng sau đ}y trên mảng hai chiều 
bằng hai cách khai báo: theo kiểu thơng thường và khai báo bằng con trỏ. 
- Hàm nhập giá trị cho mảng hai chiều. 
- Hàm xuất giá trị của mảng hai chiều theo dạng ma trận. 
- Hàm cộng hai ma trận. 
- Hàm nhân hai ma trận. 
- Hàm thay thế tất cả các phần tử cĩ giá trị lẻ của ma trận thành 0. 
- Hàm thay thế tất cả các phần tử âm của ma trận bằng phần tử dương 
tương ứng. 
- Hàm thay thế các phần tử cĩ giá trị nhỏ hơn gi| trị trung bình của ma trận 
bằng phần tử 0. 
- H{m tính lũy thừa của ma trận vuơng. 
Các hàm yêu cầu được xây dựng theo prototype. Các ma trận (mảng hai 
chiều) trong các bài tập trên là ma trận vuơng. Bổ sung h{m main v{ c|c thư 
viện cần thiết để được một chương trình ho{n chỉnh. 
Bài tập 5. 
Đặng Ngọc Hoàng Thành 
T r a n g | 200 
C
+
+
Hãy chọn lựa c|c phương ph|p phù hợp trong lập trình hướng đối tượng để 
lập trình giải c|c b{i to|n sau đ}y. 
a) Xây dựng lớp TamGiac (tam giác) gồm cĩ ba cạnh với c|c phương thức 
sau: 
- Các phương thức khởi tạo cho tam giác: khơng tham số, cĩ tham số và sao 
chép hàm tạo. 
- Các phương thức Getter. 
- Phương thức KiemTra để cho biết nĩ cĩ phải là một tam giác thực sự 
khơng. 
- Phương thức tính diện tích tam giác nếu nĩ là một tam giác thực sự. 
- Các phương thức nhập/xuất cho tam giác. Xây dựng theo tốn tử. 
b) Xây dựng lớp Diem (điểm) gồm cĩ 3 tọa độ x, y, z v{ c|c phương thức 
sau: 
- C|c phương thức khởi tạo. 
- C|c phương thức Getter. 
- Phương thức tính khoảng cách giữa hai điểm. 
Xây dựng lớp Vector gồm cĩ hai thuộc tính tương ứng với hai đối tượng 
Diem (điểm đầu v{ điểm mút). Hãy bổ sung c|c phương thức sau cho lớp 
Vector: 
- C|c phương thức khởi tạo. 
- C|c phương thức Getter. 
- Phương thức tính độ dài của vector. 
- Phương thức cộng hai vector. Xây dựng theo tốn tử. 
- Phương thức tính tích vơ hướng của hai vector. 
- Phương thức tính cosin gĩc giữa hai vector. 
- Phương thức tính tích hữu hướng của hai vector. 
Đặng Ngọc Hoàng Thành 
T r a n g | 201 
C
+
+
Xây dựng lớp HinhCau (hình cầu) gồm hai thuộc tính l{ đối tượng Diem 
tương ứng với tâm hình cầu và bán kính R. Hãy bổ sung c|c phương thức 
sau cho lớp HinhCau: 
- C|c phương thức khởi tạo. 
- C|c phương thức Getter. 
- Phương thức tính diện tích hình cầu. 
- Phương thức x|c định vị trí tương đối giữa hình cầu và một điểm. 
- Phương thức x|c định vị trí tương đối giữa hai hình cầu. 
Yêu cầu chung: hãy bổ sung các hàm tốn tử nhập xuất cho mỗi lớp đối 
tượng trên. 
Bài 6. 
Xây dựng lớp ConNguoi gồm cĩ hai thuộc tính thành viên là: tên và tuổi. Các 
phương thức khởi tạo v{ c|c phương thức Getter tương ứng. 
Lớp NhanVien thừa kế từ lớp ConNguoi, bằng cách bổ sung thêm hai thuộc 
tính l{: m~ nh}n viên, lương v{ mức đĩng gĩp (tính theo lương). Bổ sung 
phương thức khởi tạo v{ c|c phương thức Getter. 
Các cơng ty quản lý nhân viên của mình. Đối tượng CongTy cĩ các thuộc 
tính: tên cơng ty, mức đĩng gĩp chuẩn, ngân sách hiện cĩ, nguồn thu theo 
tháng, nguồn chi theo tháng. Giả sử nguồn chi này khơng bao gồm chi phí 
trả lương cho nh}n viên. Đối tượng CongTy cĩ phương thức tuyển dụng để 
tuyển thêm nh}n viên, v{ phương thức sa thải để sa thải nhân viên. 
Một nhân viên sẽ bị sa thải, nếu mức đĩng gĩp của họ nhỏ hơn mức đĩng 
gĩp chuẩn của cơng ty. 
Một cơng ty sẽ tuyên bố phá sản nếu vốn điều lệ của họ bị âm. Vốn điều lệ là 
tổng ngân sách hiện cĩ cộng với mức đĩng gĩp của mỗi nhân viên trừ cho 
nguồn chi theo tháng và trừ tiếp cho tổng lương chi trả cho tồn bộ nhân 
viên. Hãy xây dựng chương trình để thực thi mơ tả này. 
Bài 7. 
Hãy xây dựng chương trình ứng dụng theo mơ tả sau. 
Đặng Ngọc Hoàng Thành 
T r a n g | 202 
C
+
+
- Lớp đối tượng người dùng gồm các thuộc tính: username, password, câu 
hỏi bảo mật và câu trả lời. Bổ sung c|c phương thức tương ứng cho phù 
hợp. Khi chạy chương trình, người dùng nhập vào username và password. 
Nếu trùng khớp với username v{ password đ~ tạo trong hệ thống thì thơng 
b|o đăng nhập thành cơng. 
- Sau khi đăng nhập th{nh cơng, người dùng cĩ quyền triệu gọi c|c phương 
thức tính tốn của lớp số phức và phân số (cần xây dựng thêm hai lớp này). 
- Nếu người dùng đăng nhập khơng thành cơng, yêu cầu họ xác minh rằng 
cĩ phải họ đ~ quên mật khẩu hay khơng bằng một câu hỏi bảo mật. Nếu trả 
lời đúng, thì cho phép họ thay đổi mật khẩu. 
- Nếu đăng nhập khơng thành cơng và trả lời sai câu hỏi bảo mật, hãy in ra 
thơng b|o “Bạn chưa phải l{ th{nh viên”, h~y chọn “y” để đăng kí v{ chọn 
“n” để thốt. 
Bài 8. 
Mỗi đối tượng Shape trong Microsoft Word đều cĩ cĩ các thuộc tính: màu 
viền, màu nền, nội dung văn bản bên trong, thứ bậc, tình trạng đang được 
chọn hay khơng v{ c|c phương thức khởi tạo, thay đổi giá trị cho mỗi thuộc 
tính (phương thức setter). 
Hãy tạo ra một mảng 10 phần tử Shape. Các giá trị thứ bậc khơng được 
trùng nhau (và phân bố từ 0-9). Trong 10 đối tượng này, tại mỗi thời điểm, 
chỉ cĩ đúng một đối tượng đang ở tình trạng chọn. Nếu đối tượng ở tình 
trạng chọn, thì ta mới cĩ quyền thay đổi giá trị cho nĩ. 
Hãy bổ sung thêm c|c phương thức cần thiết để thực hiện các yêu cầu trên. 
Bài 9. 
Hãy phân tích mơ hình quản lý sinh viên trong trường đại học. Từ mơ hình 
ph}n tích được, hãy xây dựng chương trình quản lý sinh viên. Trong mơ 
hình này, yêu cầu quản lý khơng dưới 10 lớp đối tượng. 
Gợi ý: Các lớp đối tượng trong mơ hình này bao gồm – Sinh viên, Giáo viên 
chủ nhiệm, Phịng Cơng tác học sinh sinh viên, Phịng Đ{o tạo, Phịng Tài 
chính, Khoa chuyên mơn, Đo{n TN, Lớp, Phịng học, Mơn học 
Bài 10. 
Đặng Ngọc Hoàng Thành 
T r a n g | 203 
C
+
+
H~y ph}n tích theo hướng đối tượng mơ hình quản lý Nh{ nước thu nhỏ 
được cho bên dưới đ}y. Từ mơ hình ph}n tích đĩ, h~y x}y dựng chương 
trình để quản lý Nh{ nước thu nhỏ. Biết rằng, tương t|c giữa c|c đối tượng 
cĩ tính bắc cầu. 
Hình 22 – Mơ hình tương t|c quản lý Nh{ nước. 
Bộ GD 
Bộ Y tế 
Bộ Cơng Thương 
Bộ Quốc Phịng 
Bộ Nơng Nghiệp 
Sở GD 
Sở Y tế 
Cơ sở 
Kế thừa Tương t|c 
Đặng Ngọc Hoàng Thành 
T r a n g | 204 
C
+
+
BÀI TẬP LỚN 
Dự án 1. Phân tích, thiết kế và xây dựng chương trình quản lý thư viện. 
Trong chương trình n{y, cần đảm bảo các chức năng sau đ}y: 
- Trong mơ hình quản lý này cần đảm bảo các thơng tin: mã sách, tên sách, 
tên tác giả, năm xuất bản, nhà xuất bản, số trang, giá và số lượng. 
- Cho phép bổ sung thêm một hoặc nhiều quyển sách. 
- Cập nhập lại số lượng s|ch khi cĩ người mượn/trả sách. 
- Tìm kiếm sách theo tên tác giả hoặc tên sách. 
- Kiểm tra tình trạng sách cịn hay khơng. 
- Chương trình thực thi trên màn hình Console. Cĩ menu tùy chọn. Dữ liệu 
được lưu trữ vào tập tin data.dat dưới dạng mã hĩa nhị phân. 
Dự án 2. Phân tích, thiết kế và xây dựng chương trình quản lý website bán 
máy tính. Trong chương trình trình n{y, cần đảm bảo các chức năng sau 
đ}y: 
- Trong mơ hình quản lý này, cần đảm bảo các thơng tin: mã hàng, màu sắc, 
nước sản xuất, hãng, giá tiền, số lượng, thời gian bảo hành, cĩ c{i đặt hệ 
điều h{nh hay khơng, địa chỉ khác hàng, số điện thoại khách hàng. 
- Tìm kiếm mặt hàng theo tên hãng, giá tiền v{ nước sản xuất. 
- Kiểm tra tình trạng cịn hàng hay khơng. 
- Bổ sung (nhập thêm hàng) hoặc xĩa bỏ (bán hàng). 
- Chương trình thực thi trên màn hình Console. Cĩ menu tùy chọn. Dữ liệu 
được lưu trữ vào tập tin data.dat dưới dạng mã hĩa nhị phân. 
Dự án 3. Phân tích, thiết kế và xây dựng chương trình quản lý nhân viên 
trong cơng ty. Trong chương trình trình n{y, cần đảm bảo các chức năng 
sau đ}y: 
Đặng Ngọc Hoàng Thành 
T r a n g | 205 
C
+
+
- Trong mơ hình quản lý này, cần đảm bảo các thơng tin: mã nhân viên, họ 
tên nh}n viên, ng{y th|ng năm sinh, hệ số lương, năm bắt đầu cơng tác, tình 
trạng hơn nhân, bộ phận làm việc. 
- Tìm kiếm nhân viên theo họ tên. 
- Thống kê số lượng nhân viên theo bộ phận làm việc 
- Bổ sung (tuyển dụng) hoặc xĩa bỏ (kết thúc hợp đồng). 
- Chương trình thực thi trên màn hình Console. Cĩ menu tùy chọn. Dữ liệu 
được lưu trữ vào tập tin data.dat dưới dạng mã hĩa nhị phân. 
Dự án 4. Phân tích, thiết kế và xây dựng game FarmVille (một game nổi 
tiếng trên Facebook). Trong game này, cần đảm bảo các chức năng sau đ}y: 
- Trong mơ hình quản lý này, cần đảm bảo các thơng tin: người chơi – 
email, tên người chơi, tổng số tiền. C|c đối tượng trong game: tên đối 
tượng, trị giá, thời gian khởi tạo, thời gian thu hoạch. 
- Tìm kiếm người chơi theo họ tên. 
- Thống kê số tiền thu được của một người chơi. 
- Bổ sung người chơi hoặc đối tượng trong game. 
- Khi thu hoạch một đối tượng, thì trị giá của đối tượng sẽ được cập nhập 
vào cho tổng tiền của người chơi, đồng thời đối tượng cũng sẽ bị hủy. Đối 
tượng chỉ cĩ thể được thu hoạch nếu: thời gian hiện tại – thời gian khởi tạo 
>= thời gian thu hoạch. 
- Chương trình cĩ menu điều khiển, khơng yêu cầu tạo giao diện đồ họa. 
Ghi chú: bài tập lớn phải được thực thi theo các yêu cầu sau 
- Phân tích mơ hình lên giấy (nộp bản in). 
- Nộp chương trình ho{n chỉnh. Trong đĩ, chương trình ho{n chỉnh và tập 
tin word (*.doc; *.docx) phải được ghi lên đĩa CD, bên ngo{i đĩa cĩ ghi: tên 
sinh viên, lớp v{ “B{i tập lớn: Lập trình hướng đối tượng C++”. 
Đặng Ngọc Hoàng Thành 
T r a n g | 206 
C
+
+
DANH SÁCH HÌNH 
Hình 1 – Tạo mới dự án trong CodeBlocks ................................................................ 10 
Hình 2 – Khởi tạo th}n phương thức ............................................................................ 11 
Hình 3 – Cấu hình MinGW trong Eclipse Helios ....................................................... 12 
Hình 4 – Chọn đường dẫn đến thư mục bin của MinGW ...................................... 13 
Hình 5 - Tạo mới dự án ....................................................................................................... 13 
Hình 6 - Cấu trúc thư mục của một dự án ................................................................... 14 
Hình 7 - Biên dịch một dự án ........................................................................................... 14 
Hình 8 - Hộp thoại tạo mới class .................................................................................... 15 
Hình 9 - Giao diện tổng thể của Visual Studio 2010 ............................................... 17 
Hình 10 - Tạo dự án Win32 Console ............................................................................. 18 
Hình 11 - Win32 Application Wizard ........................................................................... 18 
Hình 12 - Bổ sung thêm một tập tin .............................................................................. 20 
Hình 13 - Bổ sung thêm lớp đối tượng ........................................................................ 20 
Hình 14 - Tạo lớp bằng Class Wizard ........................................................................... 21 
Hình 15 - Xem biểu đồ lớp................................................................................................. 22 
Hình 16 – Sơ đồ minh họa việc sử dụng hàm ............................................................ 70 
Hình 17 – Tham chiếu trong con trỏ ............................................................................. 92 
Hình 18 – Tham chiếu ngược trong con trỏ ............................................................... 93 
Hình 19 – Tăng/Giảm địa chỉ của con trỏ ................................................................... 99 
Hình 20 – Minh họa sơ đồ lớp ....................................................................................... 123 
Hình 21 – Tính kế thừa .................................................................................................... 152 
Hình 22 – Mơ hình tương t|c quản lý Nh{ nước. .................................................. 203 
Đặng Ngọc Hoàng Thành 
T r a n g | 207 
C
+
+
TRA CỨU TỪ KHĨA 
MỘT SỐ THUẬT NGỮ ANH-VIỆT ĐƯỢC SỬ DỤNG TRONG GIÁO TRÌNH 
Nguyên bản tiếng Anh Dịch sang tiếng Việt 
Abstract base class Lớp cơ sở trìu tượng 
Abstraction Tính trìu tượng 
Arithmetic operators Tốn tử số học 
Assignment operators Tốn tử gán 
Base class Lớp cơ sở/ Lớp cha 
Bitwise operators Tốn tử dịch bit 
Child class/SubClass Lớp con 
Class Lớp 
Comma operators Tốn tử phân tách 
Compound assignment operator Tốn tử gán hợp nhất 
Conditional operators Tốn tử điều kiện 
Encapsulation Tính đĩng gĩi 
Exception Ngoại lệ 
Explicit type casting operators Tốn tử chuyển đổi kiểu dữ liệu 
Increase and decrease operators Tốn tử tăng giảm 
Information hiding Che dấu/ẩn dấu thơng tin 
Inheritance Tính thừa kế/ Tính kế thừa 
Instance Sự thể hiện 
Logical operators Tốn tử logic 
Multiple inheritance Tính đa thừa kết/Tính đa kế thừa 
Object Đối tượng 
Operator Tốn tử 
Operator overloading Chồng chất tốn tử 
Overload Chồng chất 
Override Quá tải 
Polymorphism Tính đa hình 
Prototype Nguyên mẫu 
Pure virtual function Hàm ảo thuần túy 
Reference Tham chiếu 
Relational and equality operators Tốn tử quan hệ và so sánh 

File đính kèm:

  • pdfgiao_trinh_lap_trinh_huong_doi_tuong_dang_ngoc_hoang_thanh.pdf