際際滷

際際滷Share a Scribd company logo
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 1
L畉P TRNH H働畛NG 畛I T働畛NGL畉P TRNH H働畛NG 畛I T働畛NG
CC++++
B畛 m担n H畛 Th畛ng M叩y T鱈nh & Truy畛n Th担ng
Khoa C担ng Ngh畛 Th担ng Tin v Truy畛n Th担ng
畉i H畛c C畉n Th董
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 2
Gi畛i Thi畛u T畛ng QuanGi畛i Thi畛u T畛ng Quan
 T棚n m担n h畛c: L畉p Tr狸nh H動畛ng 畛i T動畛ng C++
 S畛 董n v畛 h畛c tr狸nh: 3
 Ki畉n th畛c ti棚n quy畉t: L畉p tr狸nh c董 b畉n
 N畛i dung ch鱈nh:
 Truy畛n 畉t nh畛ng kh叩i ni畛m, nguy棚n l箪 c董 b畉n c畛a
L畉p Tr狸nh H動畛ng 畛i T動畛ng (OOP).
 Minh h畛a l畉p tr狸nh h動畛ng 畛i t動畛ng b畉ng
ng担n ng畛 C++.
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 3
Gi畛i Thi畛u T畛ng QuanGi畛i Thi畛u T畛ng Quan
 Gi叩o tr狸nh ch鱈nh:
L畉p Tr狸nh H動畛ng 畛i T動畛ng C++
Th畉c s挑. Tr動董ng Vn Ch鱈 C担ng
M畛c l畛c
Ch動董ng 1 Ch動董ng 2 Ch動董ng 3 Ch動董ng 4 Ch動董ng 5 Ch動董ng 6 Ch動董ng 7 Ch動董ng 8 Ch動董ng 9
Gi畛i thi畛u
N畛i dung
Bi t畉p
Gi畛i thi畛u
N畛i dung
Bi t畉p
Gi畛i thi畛u
N畛i dung
Bi t畉p
Gi畛i thi畛u
N畛i dung
Bi t畉p
Gi畛i thi畛u
N畛i dung
Bi t畉p
Gi畛i thi畛u
N畛i dung
Bi t畉p
Gi畛i thi畛u
N畛i dung
Bi t畉p
Gi畛i thi畛u
N畛i dung
Bi t畉p
Gi畛i thi畛u
N畛i dung
Bi t畉p
Ph畛 l畛c
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 4
Gi畛i Thi畛u T畛ng QuanGi畛i Thi畛u T畛ng Quan
 Danh m畛c ti li畛u tham kh畉o
1. Ali Bahrami, Object-oriented Systems Development,
McGraw-Hill Companies Inc., 1999.
2. Bruce Eckel, Thinking in C++, Prentice Hall Inc., 2000.
3. Budd, Timothy, An Introduction to Object-Oriented
Programming, Addison-Wesley, 1997.
4. Robert Lafore, Object-oriented Programming in C++, SAMS,
2001.
5. Ph畉m Vn 畉t, C++ v L畉p Tr狸nh H動畛ng 畛i T動畛ng, Khoa
H畛c K畛 Thu畉t, 2000.
6. Scott Robert Ladd, C++ K畛 Thu畉t v 畛ng D畛ng, Khoa H畛c
K畛 Thu畉t, 1992.
7. Sharam Hekmat, C++ Programming, Pragmatix Software Pt,
2004.
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 5
Ph動董ng Ph叩p H畛c T畉pPh動董ng Ph叩p H畛c T畉p
 T狸m hi畛u theo ch畛 i畛m
 Tr狸nh by n畛i dung c董 b畉n
 Tham kh畉o gi叩o tr狸nh, ti li畛u tham kh畉o
 Tng c動畛ng kh畉 nng t畛 h畛c
 Th畛c hnh tr棚n m叩y
 Th畉o lu畉n nh坦m
 Email, Internet
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 6
N畛i dungN畛i dung
 M畛 畉u
 Bi畛u th畛c
 L畛nh
 Hm
 M畉ng - Con tr畛 - Tham chi畉u
 L畉p tr狸nh h動畛ng 畛i t動畛ng
 L畛p
 T叩i 畛nh ngh挑a
 Th畛a k畉
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 7
M畛 畉uM畛 畉u
 M畛c ti棚u
 Gi畛i thi畛u c叩c kh叩i ni畛m c董 b畉n c畛a m畛t
ch動董ng tr狸nh C++.
 N畛i dung
 Vi畉t v bi棚n d畛ch ch動董ng tr狸nh C++
 Bi畉n, h畉ng, ch炭 th鱈ch, ki畛u d畛 li畛u
 B畛 nh畛, nh畉p xu畉t
Ch動董ng 1
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 8
Bi畛u Th畛cBi畛u Th畛c
 M畛c ti棚u
 Gi畛i thi畛u c叩c to叩n t畛 cho vi畛c so畉n th畉o c叩c
bi畛u th畛c.
 N畛i dung
 To叩n t畛 to叩n h畛c, quan h畛, lu畉n l箪, bit,
tng/gi畉m, kh畛i t畉o, i畛u ki畛n, l畉y k鱈ch th動畛c
 畛 動u ti棚n c畛a c叩c to叩n t畛
 Chuy畛n ki畛u
Ch動董ng 2
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 9
L畛nhL畛nh
 M畛c ti棚u
 Cung c畉p c炭 ph叩p v c叩ch s畛 d畛ng c叩c l畛nh.
 N畛i dung
 L畛nh 董n, l畛nh ph畛c
 L畛nh r畉 nh叩nh: if, switch
 L畛nh l畉p: while, do..while, for
 L畛nh nh畉y: continue, break, goto
Ch動董ng 3
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 10
HmHm
 M畛c ti棚u
 M担 t畉 c叩ch khai b叩o, 畛nh ngh挑a, v g畛i hm.
 N畛i dung
 Khai b叩o hm, 畛nh ngh挑a hm
 Tham s畛, 畛i s畛, ph畉m vi
 Bi畉n t畛 畛ng, bi畉n thanh ghi, bi畉n n畛i tuy畉n
 畛i s畛 m畉c 畛nh, 畛i s畛 hng l畛nh
Ch動董ng 4
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 11
M畉ng, Con Tr畛, Tham Chi畉uM畉ng, Con Tr畛, Tham Chi畉u
 M畛c ti棚u
 Gi畛i thi畛u c叩c c叩ch s畛 d畛ng m畉ng, con tr畛,
v tham chi畉u.
 N畛i dung
 M畉ng m畛t chi畛u, nhi畛u chi畛u, b畛 nh畛 t挑nh
 Con tr畛, t鱈nh to叩n con tr畛, b畛 nh畛 畛ng
 Con tr畛 hm, tham chi畉u
Ch動董ng 5
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 12
L畉p Tr狸nh H動畛ng 畛i T動畛ngL畉p Tr狸nh H動畛ng 畛i T動畛ng
 M畛c ti棚u
 Gi畛i thi畛u nh畛ng kh叩i ni畛m c董 b畉n trong l畉p
tr狸nh h動畛ng 畛i t動畛ng.
 N畛i dung
 Tr畛u t動畛ng h坦a, 畛i t動畛ng, l畛p.
 Thu畛c t鱈nh, ph動董ng th畛c, th担ng i畛p.
 T鱈nh bao g坦i, t鱈nh k畉 th畛a, t鱈nh a h狸nh
Ch動董ng 6
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 13
L畛pL畛p
 M畛c ti棚u
 Gi畛i thi畛u c畉u tr炭c l畛p C++ 畛 畛nh ngh挑a
ki畛u d畛 li畛u m畛i.
 N畛i dung
 C畉u tr炭c l畛p, hm x但y d畛ng, hm h畛y
 Hm b畉n, 畛i s畛 m畉c 畛nh, 畛i s畛 畉n, to叩n t畛 ph畉m
vi, danh s叩ch kh畛i t畉o thnh vi棚n
 Thnh vi棚n h畉ng, thnh vi棚n t挑nh, thnh vi棚n tham
chi畉u, thnh vi棚n 畛i t動畛ng
Ch動董ng 7
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 14
T叩i 畛nh Ngh挑aT叩i 畛nh Ngh挑a
 M畛c ti棚u
 Gi畛i thi畛u c董 ch畉 t叩i 畛nh ngh挑a hm v t叩i
畛nh ngh挑a to叩n t畛 trong C++.
 N畛i dung
 T叩i 畛nh ngh挑a hm, to叩n t畛, chuy畛n ki畛u
 T叩i 畛nh ngh挑a to叩n t畛 <<, >>, [ ], ( ), new,
delete, ++, --
 Kh畛i t畉o ng畉m 畛nh, g叩n tr畛 ng畉m 畛nh
Ch動董ng 8
Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 15
Th畛a K畉Th畛a K畉
 M畛c ti棚u
 Khai th叩c c叩c 畉c t鱈nh th畛a k畉 trong C++.
 N畛i dung
 L畛p c董 s畛, l畛p d畉n xu畉t, th畛 b畉c l畛p
 Hm x但y d畛ng, hm h畛y, thnh vi棚n 動畛c
b畉o v畛
 L畛p c董 s畛 ri棚ng/chung/動畛c b畉o v畛, hm 畉o,
a th畛a k畉, s畛 m董 h畛, chuy畛n ki畛u
 L畛p c董 s畛 畉o, t叩i 畛nh ngh挑a to叩n t畛
Ch動董ng 9

More Related Content

Lesson00

  • 1. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 1 L畉P TRNH H働畛NG 畛I T働畛NGL畉P TRNH H働畛NG 畛I T働畛NG CC++++ B畛 m担n H畛 Th畛ng M叩y T鱈nh & Truy畛n Th担ng Khoa C担ng Ngh畛 Th担ng Tin v Truy畛n Th担ng 畉i H畛c C畉n Th董
  • 2. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 2 Gi畛i Thi畛u T畛ng QuanGi畛i Thi畛u T畛ng Quan T棚n m担n h畛c: L畉p Tr狸nh H動畛ng 畛i T動畛ng C++ S畛 董n v畛 h畛c tr狸nh: 3 Ki畉n th畛c ti棚n quy畉t: L畉p tr狸nh c董 b畉n N畛i dung ch鱈nh: Truy畛n 畉t nh畛ng kh叩i ni畛m, nguy棚n l箪 c董 b畉n c畛a L畉p Tr狸nh H動畛ng 畛i T動畛ng (OOP). Minh h畛a l畉p tr狸nh h動畛ng 畛i t動畛ng b畉ng ng担n ng畛 C++.
  • 3. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 3 Gi畛i Thi畛u T畛ng QuanGi畛i Thi畛u T畛ng Quan Gi叩o tr狸nh ch鱈nh: L畉p Tr狸nh H動畛ng 畛i T動畛ng C++ Th畉c s挑. Tr動董ng Vn Ch鱈 C担ng M畛c l畛c Ch動董ng 1 Ch動董ng 2 Ch動董ng 3 Ch動董ng 4 Ch動董ng 5 Ch動董ng 6 Ch動董ng 7 Ch動董ng 8 Ch動董ng 9 Gi畛i thi畛u N畛i dung Bi t畉p Gi畛i thi畛u N畛i dung Bi t畉p Gi畛i thi畛u N畛i dung Bi t畉p Gi畛i thi畛u N畛i dung Bi t畉p Gi畛i thi畛u N畛i dung Bi t畉p Gi畛i thi畛u N畛i dung Bi t畉p Gi畛i thi畛u N畛i dung Bi t畉p Gi畛i thi畛u N畛i dung Bi t畉p Gi畛i thi畛u N畛i dung Bi t畉p Ph畛 l畛c
  • 4. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 4 Gi畛i Thi畛u T畛ng QuanGi畛i Thi畛u T畛ng Quan Danh m畛c ti li畛u tham kh畉o 1. Ali Bahrami, Object-oriented Systems Development, McGraw-Hill Companies Inc., 1999. 2. Bruce Eckel, Thinking in C++, Prentice Hall Inc., 2000. 3. Budd, Timothy, An Introduction to Object-Oriented Programming, Addison-Wesley, 1997. 4. Robert Lafore, Object-oriented Programming in C++, SAMS, 2001. 5. Ph畉m Vn 畉t, C++ v L畉p Tr狸nh H動畛ng 畛i T動畛ng, Khoa H畛c K畛 Thu畉t, 2000. 6. Scott Robert Ladd, C++ K畛 Thu畉t v 畛ng D畛ng, Khoa H畛c K畛 Thu畉t, 1992. 7. Sharam Hekmat, C++ Programming, Pragmatix Software Pt, 2004.
  • 5. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 5 Ph動董ng Ph叩p H畛c T畉pPh動董ng Ph叩p H畛c T畉p T狸m hi畛u theo ch畛 i畛m Tr狸nh by n畛i dung c董 b畉n Tham kh畉o gi叩o tr狸nh, ti li畛u tham kh畉o Tng c動畛ng kh畉 nng t畛 h畛c Th畛c hnh tr棚n m叩y Th畉o lu畉n nh坦m Email, Internet
  • 6. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 6 N畛i dungN畛i dung M畛 畉u Bi畛u th畛c L畛nh Hm M畉ng - Con tr畛 - Tham chi畉u L畉p tr狸nh h動畛ng 畛i t動畛ng L畛p T叩i 畛nh ngh挑a Th畛a k畉
  • 7. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 7 M畛 畉uM畛 畉u M畛c ti棚u Gi畛i thi畛u c叩c kh叩i ni畛m c董 b畉n c畛a m畛t ch動董ng tr狸nh C++. N畛i dung Vi畉t v bi棚n d畛ch ch動董ng tr狸nh C++ Bi畉n, h畉ng, ch炭 th鱈ch, ki畛u d畛 li畛u B畛 nh畛, nh畉p xu畉t Ch動董ng 1
  • 8. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 8 Bi畛u Th畛cBi畛u Th畛c M畛c ti棚u Gi畛i thi畛u c叩c to叩n t畛 cho vi畛c so畉n th畉o c叩c bi畛u th畛c. N畛i dung To叩n t畛 to叩n h畛c, quan h畛, lu畉n l箪, bit, tng/gi畉m, kh畛i t畉o, i畛u ki畛n, l畉y k鱈ch th動畛c 畛 動u ti棚n c畛a c叩c to叩n t畛 Chuy畛n ki畛u Ch動董ng 2
  • 9. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 9 L畛nhL畛nh M畛c ti棚u Cung c畉p c炭 ph叩p v c叩ch s畛 d畛ng c叩c l畛nh. N畛i dung L畛nh 董n, l畛nh ph畛c L畛nh r畉 nh叩nh: if, switch L畛nh l畉p: while, do..while, for L畛nh nh畉y: continue, break, goto Ch動董ng 3
  • 10. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 10 HmHm M畛c ti棚u M担 t畉 c叩ch khai b叩o, 畛nh ngh挑a, v g畛i hm. N畛i dung Khai b叩o hm, 畛nh ngh挑a hm Tham s畛, 畛i s畛, ph畉m vi Bi畉n t畛 畛ng, bi畉n thanh ghi, bi畉n n畛i tuy畉n 畛i s畛 m畉c 畛nh, 畛i s畛 hng l畛nh Ch動董ng 4
  • 11. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 11 M畉ng, Con Tr畛, Tham Chi畉uM畉ng, Con Tr畛, Tham Chi畉u M畛c ti棚u Gi畛i thi畛u c叩c c叩ch s畛 d畛ng m畉ng, con tr畛, v tham chi畉u. N畛i dung M畉ng m畛t chi畛u, nhi畛u chi畛u, b畛 nh畛 t挑nh Con tr畛, t鱈nh to叩n con tr畛, b畛 nh畛 畛ng Con tr畛 hm, tham chi畉u Ch動董ng 5
  • 12. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 12 L畉p Tr狸nh H動畛ng 畛i T動畛ngL畉p Tr狸nh H動畛ng 畛i T動畛ng M畛c ti棚u Gi畛i thi畛u nh畛ng kh叩i ni畛m c董 b畉n trong l畉p tr狸nh h動畛ng 畛i t動畛ng. N畛i dung Tr畛u t動畛ng h坦a, 畛i t動畛ng, l畛p. Thu畛c t鱈nh, ph動董ng th畛c, th担ng i畛p. T鱈nh bao g坦i, t鱈nh k畉 th畛a, t鱈nh a h狸nh Ch動董ng 6
  • 13. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 13 L畛pL畛p M畛c ti棚u Gi畛i thi畛u c畉u tr炭c l畛p C++ 畛 畛nh ngh挑a ki畛u d畛 li畛u m畛i. N畛i dung C畉u tr炭c l畛p, hm x但y d畛ng, hm h畛y Hm b畉n, 畛i s畛 m畉c 畛nh, 畛i s畛 畉n, to叩n t畛 ph畉m vi, danh s叩ch kh畛i t畉o thnh vi棚n Thnh vi棚n h畉ng, thnh vi棚n t挑nh, thnh vi棚n tham chi畉u, thnh vi棚n 畛i t動畛ng Ch動董ng 7
  • 14. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 14 T叩i 畛nh Ngh挑aT叩i 畛nh Ngh挑a M畛c ti棚u Gi畛i thi畛u c董 ch畉 t叩i 畛nh ngh挑a hm v t叩i 畛nh ngh挑a to叩n t畛 trong C++. N畛i dung T叩i 畛nh ngh挑a hm, to叩n t畛, chuy畛n ki畛u T叩i 畛nh ngh挑a to叩n t畛 <<, >>, [ ], ( ), new, delete, ++, -- Kh畛i t畉o ng畉m 畛nh, g叩n tr畛 ng畉m 畛nh Ch動董ng 8
  • 15. Khoa C担ng Ngh畛 Th担ng Tin - 畉i H畛c C畉n Th董 15 Th畛a K畉Th畛a K畉 M畛c ti棚u Khai th叩c c叩c 畉c t鱈nh th畛a k畉 trong C++. N畛i dung L畛p c董 s畛, l畛p d畉n xu畉t, th畛 b畉c l畛p Hm x但y d畛ng, hm h畛y, thnh vi棚n 動畛c b畉o v畛 L畛p c董 s畛 ri棚ng/chung/動畛c b畉o v畛, hm 畉o, a th畛a k畉, s畛 m董 h畛, chuy畛n ki畛u L畛p c董 s畛 畉o, t叩i 畛nh ngh挑a to叩n t畛 Ch動董ng 9