1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng Lập trình hướng đối tượng

132 147 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 132
Dung lượng 18,61 MB
File đính kèm BaiGiang_LapTrinhHDT.rar (18 MB)

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đây là bài giảng môn Lập trình hướng đối tượng. Bài giảng gồm các vấn đề tính đóng gói, thừa kế, đa hình, trừu tượng...Bài giảng có nhiều ví dụ minh họa cho phần lí thuyết. Học sinh sinh viên hoặc người đam mê lập trình có thể code lại để nâng cao kĩ năng lập trình. Dưới đây là nội dung bài giảng:BÀI 1. UML VÀ NHỮNG MỞ RỘNG CỦA C++91.Tổng quan về UML92.Những mở rộng của C++17BÀI 2. ĐỐI TƯỢNG VÀ LỚP (Object Class)311.Đối tượng (Object)312.Lớp (Class)323.Struct và class394.Hàm thiết lập (Constructor)475.Hàm hủy bỏ (destructor)526.Hàm thiết lập sao chép (Copy Constructor)567.Thành phần tĩnh (Static)588.Đối tượng hằng – Hàm hằng (Constant)609.Hàm bạn lớp bạn (friend)62BÀI 3. ĐỊNH NGHĨA TOÁN TỬ TRÊN LỚP (CLASS OPERATORS)711.Định nghĩa toán tử trên lớp712.Chuyển đổi kiểu86BÀI 4. KỸ THUẬT THỪA KẾ (Inheritance)951.Giới thiệu chung962.Đơn thừa kế, hàm thiết lập, hàm sao chép963.Tính đa hình (polymorphism)1024.Hàm hủy bỏ ảo1065.Đa thừa kế1106.Lớp cơ sở ảo1137.Tính trừu tượng (Abstraction) (Lớp trừu tượngHàm ảo thuần túy)121BÀI 5. KHUÔN HÌNH (TEMPLATE) – XỬ LÝ LỖI (Exception Handling)1261.Khuôn Hình (Template)1262.Khuôn hình hàm1263.Khuôn hình lớp1284.Xử Lý Lỗi (Exception Handling)129

Trang 1

BỘ NÔNG NGHIỆP VÀ PHÁT TRIỂN NÔNG THÔN

TRƯỜNG CAO ĐẲNG NGHỀ CÔNG NGHỆ VÀ NÔNG LÂM NAM BỘ

KHOA CÔNG NGHỆ THÔNG TIN

Địa chỉ: QL 1K, Phường Bình An, TX Dĩ An, Tỉnh Bình

Dương Email: it.svoctaf@gmail.com

[Lưu hành nội bộ]

Trang 2

MỤC LỤC

BÀI 1 UML VÀ NHỮNG MỞ RỘNG CỦA C++ 9

1 Tổng quan về UML 9

2 Những mở rộng của C++ 17

BÀI 2 ĐỐI TƯỢNG VÀ LỚP (Object & Class) 31

1 Đối tượng (Object) 31

2 Lớp (Class) 32

3 Struct và class 39

4 Hàm thiết lập (Constructor) 47

5 Hàm hủy bỏ (destructor) 52

6 Hàm thiết lập sao chép (Copy Constructor) 56

7 Thành phần tĩnh (Static) 58

8 Đối tượng hằng – Hàm hằng (Constant) 60

9 Hàm bạn - lớp bạn (friend) 62

BÀI 3 ĐỊNH NGHĨA TOÁN TỬ TRÊN LỚP (CLASS OPERATORS) 71

1 Định nghĩa toán tử trên lớp 71

2 Chuyển đổi kiểu 86

BÀI 4 KỸ THUẬT THỪA KẾ (Inheritance) 95

1 Giới thiệu chung 96

Trang 3

5 Đa thừa kế 110

6 Lớp cơ sở ảo 113

7 Tính trừu tượng (Abstraction) (Lớp trừu tượng-Hàm ảo thuần túy) 121

BÀI 5 KHUÔN HÌNH (TEMPLATE) – XỬ LÝ LỖI (Exception Handling) 126

1 Khuôn Hình (Template) 126

2 Khuôn hình hàm 126

3 Khuôn hình lớp 128

4 Xử Lý Lỗi (Exception Handling) 129

TÀI LIỆU THAM KHẢO 133

Trang 4

• Được duy trì và phát triển bởi OMG (Object Management Group), do

Jacobson, Booch, Rumbaugh sáng lập Ngoài ra còn có hàng trăm các tập

đoàn lớn khác bảo trợ phát triển

• UML 2.0 có 13 loại biểu đồ để thể hiện các khung nhìn khác nhau (View) về hệ

thống

• Các biểu đồ UML cho ta cái nhìn rõ hơn về hệ thống (cả cái nhìn tĩnh và động)

• Hiện nay UML được sử dụng rất phổ biến trong các dự án phần mềm.

• UML thể hiện phương pháp phân tích hướng đối tượng nên không lệ thuộc

ngôn ngữ LT.

• Có rất nhiều công cụ phần mềm hỗ trợ phân tích thiết kế dùng UML.

• Nhiều công cụ có thể sinh ra mã từ UML và ngược lại (từ mã thành

UML-Reverse Eng)

• UML không phải là ngôn ngữ lập trình

Trang 5

• Xây dựng (Constructing)

• Viết tài liệu (Documenting)

Một số Case tool (Công cụ) hỗ trợ UML

• Rational Rose (của hãng Rational)

Biểu đồ ca sử dụng (Use Case Diagram)

• Mô tả các chức năng của hệ thống dựa trên quan điểm người sử dụng

• Mô tả sự tương tác giữa người dùng và hệ thống

• Cho biết hệ thống được sử dụng như thế nào ?

Trang 6

Biểu đồ Lớp (Class Diagram)

• Là biểu đồ quan trọng nhất

• Mô tả các đối tượng và mối quan hệ của chúng trong hệ thống

• Mô tả các thuộc tính và các hành vi (Behavior) của đối tượng

• Có biểu đồ lớp mức phân tích và mức cài đặt

Biểu đồ lớp mức phân tích và mức thiết kế:

Trang 7

Quan hệ phụ thuộc (Dependence) <Include>

Use case A được gọi là Include B nếu trong xử lý của A có gọi đến B ít nhất 1 lần.

Trang 8

Quan hệ phụ thuộc (Dependence) < Extend >

Use case B được gọi là Exntend A nếu use case B được gọi bởi A nếu thỏa mãn điều kiện nào đó.

Quan hệ tổng quát hóa (thừa kế)

Use case A được gọi là Generalization B nếu B là một trường hợp riêng của A (B kế

thừa A) Còn gọi là quan hệ Là một (Is a)

Trang 9

Thể hiện rằng ứng với mỗi lớp A thì có (chứa, dạy, có, mua, đặt, ) bao nhiêu phần tử lớp B?

Quan hệ Aggregation

Quan hệ Aggregation : Thể hiện rằng một lớp A nào đó bao gồm lớp B Lớp B này có

thể tồn tại độc lập mà không cần lớp A

Trang 10

Quan hệ Composition

Quan hệ Composition: thể hiện rằng một lớp A bao hàm lớp B Nhưng lớp B không

thể tồn tại độc lập (Tức không thuộc lớp nào)

Biểu đồ Tuần tự (Sequence Diagram )

• Mô tả sự tương tác của các đối tượng theo trình tự về thời gian

• Có sự liên kết chặt chẽ với biểu đồ lớp

• Mỗi biểu đồ tuần tự mô tả một tình huống xử lý

Trang 11

Ánh xạ biểu đồ tuần tự sang Code

Biểu đồ hoạt động (Activity Diagram)

• Mô tả các luồng công việc, qui trình nghiệp vụ

Class B

{ public int Login(string UID, Pass);

}MainApp { Nhập User name, password

B objB = new B ();

bool Result = objB.Login(UID, Password)

if (Result == true)

}

Trang 12

• Tương tự như sơ đồ khối (Flowchart).

• Hỗ trợ việc mô tả các xử lý song song

Một số biểu đồ khác

• Biểu đồ truyền thông: Communication diagram

• Biểu đồ tương tác: Interaction Diagram

• Biểu đồ thời gian – Timming diagram

• Biểu đồ trạng thái – State Diagram

• Biểu đồ đối tượng – Object Diagram

• Bểu đồ gói - Package Diagram

• Biểu đồ cấu trúc kết hợp – Composite Structured

• Biểu đồ thành phần – Component Diagram

• Biểu đồ triển khai – Deployment Diagram

2 Những mở rộng của C++

Trang 15

TT BƯỚC CÔNG VIỆC THỰC HIỆN PHƯƠNG TIỆN

1 Dùng lệnh xuất Câu lệnh xuất

2 Xuất chuỗi, dữ liệu Câu lệnh xuất

3 Xuất chuỗi, dữ liệu với

một câu lệnh Câu lệnh xuất.

4 Xuất dữ liệu với chức

1 Khai báo ở đầu thân

phương thức Lệnh khai báo, kiểu dữ liệu

Trang 16

2 Khai báo ở giữa thân

phương thức

Lệnh khai báo, kiểu dữ liệu

Trang 17

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Khai báo inline Từ khóa

Trang 19

số phương thức.

Tham số ngầm định trong lời gọi hàm

Trang 20

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Khai báo, gọi

phương thức có

tham số ngầm

định

Hàm, lời gọi hàm, giá trị ngầm định, kiểu dữ liệu

2 Hàm chứa tham

số ngầm định Phương thức, đối số phương

thức

Trình tự thực hiện

Trang 21

2 Hàm chứa

tham số

ngầm định

Phương thức, đối số phương thức

2 Xây dựng

phương thức

lỗi

Không gán trị cho đối

số ở đây nếu

đã khởi trị

Trang 22

trên lệnh khai báo trong hàm main.

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Lời gọi hàm lỗi Lời gọi hàm

Trang 24

2 Viết hàm nhập Phương thức,

con trỏ, mảnghai chiều, vòng lặp

Trang 25

3 Viết hàm in Phương thức,

con trỏ, mảnghai chiều, vòng lặp

Trang 26

Bài 2.

ĐỐI TƯỢNG VÀ LỚP

(Object & Class)

1 Đối tượng (Object)

Khái niệm: Đối tượng là một khái niệm trong lập trình hướng đối tượng biểu thị sự

liên kết giữa dữ liệu và các thủ tục thao tác trên dữ liệu.

Đối tượng = Dữ liệu + Phương thức

Trang 27

- Thành phần private: dùng riêng cho lớp

- Thành phần protected: dùng riêng cho lớp và lớp con của lớp đó.

- Thành phần public: dùng cho lớp, lớp con một lớp và đối tượng của lớp

Trang 28

Ví dụ lớp – đối tượng

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Tạo lớp point Từ khóa

class

2 Thành phần dữ

Trang 29

4 Thực hiện các

phương thức

Các phương thức, đối số, câu lệnh thực thi

Tạo đối tượng

Cú pháp:

Vài ví dụ tạo đối tượng

<Tên lớp> <Tên đối tượng> ;

Truy xuất của đối tượng:

Đối tượng chỉ truy xuất được các

dữ liệu và phương thức public

Cú pháp:

<Đối tượng>.<Dữ liệu>

<Đối tượng>.<Phương

thức>

Trang 30

Trình tự thực hiện

TT BƯỚC CÔNG

VIỆC THỰC HIỆN

PHƯƠNGTIỆN

1 Tạo lớp point Từ khóa

class

Trang 31

4 Định nghĩa

phương thức

move, display

Các phương thức, đối số, câu lệnh thực thi

Ví dụ khác

Trang 32

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Các thành phần

lớp point được

khai báo trước

tại file point.h

Từ khóa class

Trang 33

Trình tự thực hiện

Từ khóa xác định thuộc tính truy xuất

Trang 34

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

Trang 35

2 Thành phần

public trong 1

lớp

Có từ khóa public

Định nghĩa chồng các hàm thành phần

- Các hàm thành phần có thể trùng tên nhưng phải khác nhau về kiểu dữ liệu của tham số hàm.

Trang 37

3 Sử dụng lớp Đối tượng.

Giá trị ngầm định của tham số

Trang 39

3 Sử dụng lớp Đối tượng.

Truy cập thành phần dữ liệu

Trang 40

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Khởi tạo lớp Từ khóa

Trang 41

1 Khởi tạo lớp Từ khóa

Con trỏ this

Trình tự thực hiện

Trang 42

Phép gán các đối tượng

4 Hàm thiết lập (Constructor)

Trang 43

Trình tự thực hiện

TT BƯỚC CÔNG

VIỆC THỰC HIỆN

PHƯƠNGTIỆN

1 Khởi tạo lớp Từ khóa

class

2 Hàm thiết lập

point Từ khóa public, các

đối số

Trang 45

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Khởi tạo lớp Từ khóa

Trang 46

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Khởi tạo lớp Từ khóa

Con trỏ đối tượng

Trang 47

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Khởi tạo lớp Từ khóa

class

2 Sử dụng con trỏ

đối tượng Đối tượng, con trỏ

5 Hàm hủy bỏ (destructor)

Trang 48

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

Hàm hủy (HH) có tên trùng tên lớp

Trước hàm hủy có dấu ~

HH không có tham số, kiểu trả về

HH có thuộc tính public

HH chỉ có duy nhât một cho mỗi lớp

HH có thể ngầm định nhưng lớp có dữ liệu động cần thiết phải có HH

Trang 49

3 Định nghĩa hàm

hủy

Phương thức,

~, các lệnh thực thi

Trang 51

6 Hàm thiết lập sao chép (Copy Constructor)

Trang 52

Dạng hàm sao chép tổng quát:

-HTLSC được chạy tự động khi sao chép đối tượng.

- HTLSC có tên là tên lớp.

- Point q(p); : q được chép từ p.

Trang 53

Trình tự thực hiện

TT BƯỚC CÔNG

VIỆC THỰC HIỆN

PHƯƠNGTIỆN

1 Khởi tạo lớp Từ khóa

class

2 Định nghĩa hàm

sao chép

Phương thức, toán tử &, kiểu dữ liệu, các lệnh thực thi

3 Sử dụng hàm

sao chép

Đối tương để sao chép, đối tượng sao chép

Trang 54

7 Thành phần tĩnh (Static)

Trang 57

Trình tự thực hiện

TT BƯỚC CÔNGVIỆC THỰC HIỆN PHƯƠNGTIỆN

1 Khởi tạo lớp Từ khóa

Trang 58

Trình tự thực hiện

TT BƯỚC CÔNG

VIỆC THỰC HIỆN

PHƯƠNGTIỆN

1 Khởi tạo lớp Từ khóa

Trang 59

Hàm bạn của một lớp là hàm thành phần của lớp khác:

Trình tự thực hiện

Trang 60

2 Hàm bạn

của lớp

point2

Các thànhphần lớp,

từ khóa friend

Hàm bạn của nhiều lớp:

Trang 63

từ khóa friend.

Lớp bạn của một lớp:

Tất cả các hàm thành phần của lớp đó đều truy xuất được đến dữ liệu riêng tư của lớp kia

Trang 67

Bài 3.

ĐỊNH NGHĨA TOÁN TỬ TRÊN LỚP

(CLASS OPERATORS)

1 Định nghĩa toán tử trên lớp

Ta có các phép toán trên các dữ liệu số Kiểu lớp có các phép toán như vậy không?

Việc định nghĩa lại các phép toán như vậy cho lớp được gọi là định nghĩa chồng cáctoán tử

Hàm toán tử là hàm thành phần

Trang 68

2 Khai báo Từ khóa

Trang 69

Hàm toán tử là hàm bạn

Trang 70

Lưu ý

Trang 72

toán tử phần dữ

liệu, các tham số

Trang 73

Chồng toán tử gán

Trang 78

Định nghĩa chồng phép []

Trang 80

bộ, mảng,các lệnh thực thi.

Định nghĩa chồng <<, >>

Trang 81

bộ, các lệnh thực thi.

Chồng toán tử new, delete

Trang 82

bộ, mảng,các lệnh thực thi.

bộ, các lệnh thực thi

Trang 83

2 Chuyển đổi kiểu

Hàm toán tử chuyển kiểu ép buộc

Trang 84

3 Sử dụng Các lệnh

thực thi

Hàm toán tử chuyển kiểu trong lời gọi hàm

Trang 85

3 Hàm

ứng

dụng

Các lệnh thực thi

Trang 86

4 Sử dụng Các lệnh

thực thi

Hàm toán tử chuyển đổi kiểu cơ sở sang kiểu lớp

Trang 89

4 Sử dụng Các lệnh

thực thi

Chuyển kiểu từ lớp này sang lớp khác

Toán tử chuyển kiểu bắt buộc

Trang 90

2 Khai

báo hàm

bạn

Từ khóa friend, operator

Trang 91

4 Sử dụng Các lệnh

thực thi

Chuyển kiểu từ lớp này sang lớp khác

Hàm thiết lập dùng làm hàm toán tử

Trang 92

4 Sử dụng Các lệnh

thực thi

Trang 93

Bài 4.

KỸ THUẬT THỪA KẾ

(Inheritance)

Ví dụ thừa kế

Trang 94

1 Giới thiệu chung

- Một lớp có thể được kế thừa bởi nhiều lớp khác Lớp này gọi là lớp cơ sở (lớp

cha) Lớp kế thừa được gọi là lớp dẫn xuất (lớp con)

- Lớp dẫn xuất kế thừa mọi thành phần của lớp cơ sở

- Lớp cơ sở có thể có nhiều lớp dẫn xuất Trên các lớp dẫn xuất thể hiện các đặc

điểm riêng so với lớp cơ sở hoặc có thể lặp lại

các thành ph ần của lớp cơ sở.

- Có thể có kế thừa qua nhiều mức.

- Đối tượng của lớp dẫn xuất có đầy đủ các

thành phần lớp cơ sở và các thành phần riêng

của nó.

- Các thành phần trùng lấp các thành phần của

lớp cơ sở tại lớp dẫn xuất sẽ được phân biệt

thông qua tên lớp cơ sở.

Các tính chất lập trình hướng đối tượng

- Tính đóng gói (encapsulation) và che giấu thông tin (information hiding)

- Tính kế thừa (inheritance)

- Tính đa hình (polymorphism)

- Tính trừu tượng (abstraction)

2 Đơn thừa kế, hàm thiết lập, hàm sao chép

Trang 95

- Dùng : để khai báo sự kế thừa Đây là đơn thừa kế.

- Phải gọi lại hàm thiết lập, hàm sao chép lớp cơ sở khi xây dựng hàm thiết lập,

hàm sao chép lớp dẫn xuất Gọi chúng thông qua dấu “:”

- cpoint(cpoint &b):point(b) : cách viết khác của hàm sao chép cho lớp dẫn xuất.

- Có thể xây dựng lại hàm thành phần của lớp cơ sở tại lớp dẫn xuất Dùng :: để

phân biệt giữa chúng.

2 Khai

báo

thừa kế

Từ khóa class, toán

tử :

Trang 96

6 Sử dụng Các lệnh

thực thi

Các kiểu dẫn xuất: private, protected, public

Sự tương thích giữa đối tượng lớp dẫn xuất và đối tượng lớp cơ sở

Trang 97

Trình tự thực hiện

T BƯỚC THỰC HIỆN PHƯƠN

Trang 100

3 Sự

tương

thích

Đối tượng, cáclệnh thực thi

3 Tính đa hình ( polymorphism)

Đa hình với trường hợp con trỏ lớp cơ sở trỏ đến đối tượng lớp dẫn xuất

Trang 102

Đa hình với trường hợp gọi hàm thành phần lớp cơ sở có chứa lời gọi hàm giống nhau giữa lớp dẫn xuất và lớp cơ sở

Trang 103

- Hàm giống nhau tại lớp cơ sở sẽ là hàm ảo.

- Hàm polymorp_display() được gọi sẽ phải truy xuất đến hàm display() Hàm

display() là hàm ảo nên đối tượng của lớp dẫn xuất có thể gọi được hàm display() tại lớp dẫn xuất.

- Nếu hàm display () tại lớp cơ sở không là hàm ảo thì không gọi được hàm

display() tại lớp dẫn xuất

Trang 104

2 Lớp

cpoint

Từ khóa class, các thành phần lớp, các hàm khởi dựng, phương thức

4 Hàm hủy bỏ ảo

Trang 107

2 Lớp

cpoint

Từ khóa class, các thành phần lớp, các hàm khởi dựng, phương thức

Trang 108

3 Lớp

ccpoint

Từ khóa class, các thành phần lớp, các hàm khởi dựng, phương thức

tượng, từ khóa delete

5 Đa thừa kế

Trang 112

3 Lớp

kế

thừa

Từ khóa class, các thành phần lớp, cáchàm khởi dựng, phươngthức

4 Sử

dụng Các đốitượng,

lệnh thực thi

6 Lớp cơ sở ảo

Trang 115

tượng, Lời gọi hàm.

Trang 118

- Mặc dù lớp A có thêm lớp cha là O nhưng khai báo hàm thiết lập của lớp D

vẫn không có goi lại hàm thiết lập của lớp O

- Lớp D có 2 hàm display(), một của lớp A và một của lớp O Lời gọi hàm display

không kèm theo tên lớp chính là hàm A::display()( hoặc B::display(), hoặc C::display()) và không phải là hàm O::display().

tử :, các thành phần lớp, các hàm khởi dựng, các phương thức

Trang 119

tượng, Lời gọi hàm.

Trang 120

7 Tính trừu tượng (Abstraction) (Lớp trừu tượng-Hàm ảo thuần túy)

Trang 121

tử :, các thành phần lớp, các hàm khởi dựng, các phương thức.

tượng, Lời gọi hàm

Ví dụ về tính trừu tượng

Trang 123

2 Hàm

thuần

ảo

Từ khóa class, virtual

- Ta xây dựng một danh sách chứa các đối tượng khác nhau( không có cùng kiểu lớp)

- Xây dựng lớp point , lớp complex và một lớp trừu tượng mere nhằm đại diện 2 lớp

này.

Trang 124

4 Lớp

danh

sách

Các thànhphần lớp, câu lệnh thực thi

tượng, các lời gọi hàm

Trang 126

<>, các lệnh thực thi.

tượng, các lệnh thực thi

Khuôn hình cho kiểu dữ liệu là lớp:

Trang 127

<>, các lệnh thực thi.

tượng, các lệnh thực thi

3 Khuôn hình lớp

Trình tự thực hiện

Trang 128

tượng, các lệnh thực thi.

4 Xử Lý Lỗi (Exception Handling)

Trang 129

2 Hàm tìm

Timphan

so

Phương thức, cáclệnh thực thi

3 Xử lý lỗi Lệnh try

{} catch() {}, các lệnh thực thi

Trang 130

- Sử dụng các thuộc tính của lớp Loi_chia_0 để thông báo lỗi.

- Truyền đối số cho throw() và catch().

Trang 131

2 Hàm tìm

Timphans

o

Phương thức, các lệnh thựcthi

3 Xử lý lỗi Lệnh try

{}

catch() {}, các lệnh thựcthi

Trang 132

TÀI LIỆU THAM KHẢO

[1] “Lập trình hướng đối tượng với C ++ ”, Phạm Văn Ất, Nhà xuất bản Giao Thông Vận

Tải, 2005

[2] “Lập trình hướng đối tượng”, Trần Đan Thư - Đinh Bá Tiến - Nguyễn Tấn Trần

Minh Khang, Nhà xuất bản Khoa Học & Kỹ Thuật, 2010

[3] “Phát triển hệ thống hướng đối tượng với UML 2.0 và C + ” +, Nguyễn Văn Ba, Nhàxuất bản Đại Học Quốc Gia Hà Nội, 2005

[4] “Thinking in C ++ ”, Bruce Eckel, Prentice Hall Inc, 2000.

[5] “Beginning Visual C ++ 2005”, Ivor Horton, Wiley Publising Inc, 2006.

Ngày đăng: 08/11/2018, 10:28

TỪ KHÓA LIÊN QUAN

w