Ch
Ch
−¬
−¬
ng
ng
6
6
L
L
í
í
p
p
v
v
μ
μ
ph
ph
−¬
−¬
ng
ng
ph
ph
¸
¸
p
p
l
l
Ë
Ë
p
p
tr
tr
×
×
nh
nh
h
h
−í
−í
ng
ng
®
®
è
è
i
i
t
t
−î
−î
ng
ng
Bi ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
2
6.1 C++ v
6.1 C++ v
à
à
ph
ph
ơ
ơ
ng
ng
ph
ph
á
á
p
p
l
l
ậ
ậ
p
p
tr
tr
ì
ì
nh
nh
h
h
ớ
ớ
ng
ng
đ
đ
ố
ố
i
i
t
t
ợ
ợ
ng
ng
6.1.1 Tng quan v lptrỡnhhng i tng
Lch s phỏt trin cỏc phng phỏp lptrỡnh
Lptrỡnhtuyn tớnh:
Lptrỡnhmỏytớnhthikỡu.
Chng trỡnh nh (ớt dũng lnh), ngin.
Lptrỡnhth tc:
Phõn chia chng trỡnh thnh cỏc mụun.
Giiquyt bi toỏn theo hng phõn tớch trờn xung (top down).
Nysinhkhúkhn do ph thuc vo cutrỳcd liu.
Lptrỡnhhng itng:
Thit k xoay quanh d liu, gn kt d liu v hm x lý chỳng.
Thit k chng trỡnh theo cỏch tip cn di lờn (bottom up).
Cỏch tip cn bi toỏn gn vi thc t hn.
Bi ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
3
6.1 C++ v
6.1 C++ v
à
à
ph
ph
ơ
ơ
ng
ng
ph
ph
á
á
p
p
l
l
ậ
ậ
p
p
tr
tr
ì
ì
nh
nh
h
h
ớ
ớ
ng
ng
đ
đ
ố
ố
i
i
t
t
ợ
ợ
ng
ng
6.1.1 Tng quan v lp trỡnh hng i tng
Lptrỡnhhng itng
Cỏc khỏi nim c s:
i tng = d liu + phng thc.
Lp : tp hp cỏc i tng cựng loi.
Chng trỡnh l tp hp cỏc i tng, cỏc i tng trao i thụng
tin qua phng thc.
c im:
D dng b sung d liu, phng thc, s dng li i tng.
úng gúi d liu : che giu thụng tin
ồ
an ton mó.
Tha k : d dng s dng li cỏc mụun chng trỡnh.
a hỡnh: cỏc i tng cú th phn ng khỏc nhau tựy vo tng tỡnh
hung c th.
Th hin trong nhiu ngụn ng khỏc nhau : SIMULA, SmallTalk,
C++, Java, hay ADA, EIFFEL,
Bi ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
4
6.1 C++ v
6.1 C++ v
à
à
ph
ph
ơ
ơ
ng
ng
ph
ph
á
á
p
p
l
l
ậ
ậ
p
p
tr
tr
ì
ì
nh
nh
h
h
ớ
ớ
ng
ng
đ
đ
ố
ố
i
i
t
t
ợ
ợ
ng
ng
6.1.1 Tng quan v lp trỡnh hng i tng
Lptrỡnhhng itng (tip)
unhc im
Loib mó lpli, nõng cao tớnh s dng li.
An ton mó, d dng thitk,
Thớch hp cho xõy dng cỏc h thng ln: lmvic theo quy trỡnh, d
dngnõngcp, thunlitrongqunlý phctp,
Nhc im: ũi hithigianthchinln, tnb nh.
ng dng
Thitk giao dinngis dng (GUI).
Xõy dng cỏc h thng thụng tin phctpvhiuqu : cỏc h thng
mụ hỡnh húa & mụ phng, cỏc h thng thigianthc, cỏc h thng
song song v mng nron, cỏc h CAD/CAM, cỏc h CSDL HT, cỏc
h TTNT, HCG, HTGQ,
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
5
6.1 C++ v
6.1 C++ v
µ
µ
ph
ph
−¬
−¬
ng
ng
ph
ph
¸
¸
p
p
l
l
Ë
Ë
p
p
tr
tr
×
×
nh
nh
h
h
−í
−í
ng
ng
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.1.2 Lptrìnhhng đi tng trong C++
– C++: thêm kh nng lp trình HT vào C
• C++: thahng ttcđimmnh caC
– Là ngôn ng bao trùm lên C
å
thahng đy đ scmnh caC (ví
d tính kh chuyn, tính mmdo, ).
– C trong C++ có mtsđim khác so vi ANSI C: thay đi, thêm mi,
citin
å
phù hphn
å
tng cng scmnh cho C.
• C++: cài đt kh nng lp trình HT da trên khái nim lp
– Lp bao gm các d liu thành phn (thuc tính) và các hàm thành
phn (phng thc)
å
đóng gói d liu.
– Thc cht lp là 1 kiu d liu do ngi dùng t đnh ngha.
– Cho phép k tha các lp đã xây dng
å
đc đim quan trng ca lp
trình HT.
– Cho phép th hin tính đa hình trong tha k, đây cng là mt đc
đim quan trng ca lp trình HT.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6
6.1 C++ v
6.1 C++ v
µ
µ
ph
ph
−¬
−¬
ng
ng
ph
ph
¸
¸
p
p
l
l
Ë
Ë
p
p
tr
tr
×
×
nh
nh
h
h
−í
−í
ng
ng
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.1.2 Lp trình hng đi tng trong C++
– Lp trình HT trong C++: mt s đc đim cn chú ý
• C++ là ngôn ng lai (không phi là ngôn ng HT thun khit)
<> SmallTalk, Java, …
– So vi lp trình HT thun túy, cài đt c th ca đi tng trong C++
linh đng hn.
– C++ không bt buc đóng gói d liu
å
nhc đim chính ca C++.
• C++ phù hp cho ngi mi hc lp trình: có th s dng c tính
cu trúc và đi tng trong chng trình.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
7
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.1 Khai báo và đnh nghalp
– Cú pháp khai báo
class tên_lp{
private: //khai báo các thành phn riêng ca lp
[d liu thành phn]
[đnh ngha hàm thành phn hoc nguyên mu hàm]
public: //khai báo các thành phn công cng ca lp
[d liu thành phn]
[đnh ngha hàm thành phn hoc nguyên mu hàm]
};
/*nh ngha các hàm thành phncha đc đnh nghabên
trong khai báo lp */
[Hàm thành phn đnh ngha ngoài lp]
• Thct cho thy, có nhiukiu khai báo và các kiu đó đucóth
chunhóav dng trên.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
8
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.1 Khai báo và đnh ngha lp
– Cú pháp khai báo (tip)
• Khai báo đitng
– Cú pháp: tên_lp tên_đtng;
– Có th xem lplàmtkiud liu:
• To đitng ~ khai báo bin.
• Mi đitng là mtth hincalp.
– itng bao gmtp các bintng ng vi tên và kiucacác
DLTP.
– Các đitng chung nhau đnh ngha hàm thành phn.
– Có th khai báo mng các đitng nh mng thông thng.
– Có th dùng các phép toán
new và delete đ cpphátvàgii phóng
b nh cho đitng.
• Phép toán new s tr v mtcon trđitng.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
9
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.1 Khai báo và đnh ngha lp
– Cú pháp khai báo (tip)
• Con trđitng
– Cú pháp khai báo :
tên_lp *tên_con_tr_đtng;
– Con trđitng có th nhn giá tr là đach ca đitng cùng
kiulp
å
có th gi các thành phn(d liu, hàm) calp thông qua
con tr bng cách s dng phép toán “->”.
• Tham chiu đitng
– Cú pháp khai báo :
tên_lp &tên_thchiu_đtng = tên_đtng_đã_có;
– Mtthamchiu đitng ch có ý ngha khi nó tham chiutimt đi
tng nào đó đã đc khai báo trc đó.
• Chú ý: con tr hoc tham chiu không philàmtth hin
(instance) calp.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.1 Khai báo và đnh ngha lp
– Các chi tit trong khai báo lp
• D liu thành phn (thuc tính)
– DLTP là d liu gn vi lp (đi tng).
• D liu thành phn (DLTP) là thutng caC++, cònthuctínhlà
thutng trong lp trình HT nói chung.
– DLTP có th là binkius s, kiuphchphoc đitng thuclp
nào đó.
– DLTP không th là đitng thucbnthânlp đang đc đnh ngha
nhng có th là con tr hoc tham chiuti đitng calp đó.
– Có th s dng t khoá static cho DLTP.
– Không đcs dng các t khoá auto, register, extern cho DLTP.
– Không th khi đu giá tr cho DLTP.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.1 Khai báo và đnh ngha lp
– Các chi tit trong khai báo lp(tip)
• Hàm thành phn(phng thc)
– HTP là hàm gn vi lp (đi tng).
• Hàm thành phn(HTP) làthutng ca C++, còn phng thclàthut
ng trong lp trình HT nói chung.
– Có thđnh ngha HTP trong hay ngoài lp. Nu đnh ngha ngoài lp,
trong khai báo lpphi có nguyên muca chúng.
– Có th đt đnh ngha HTP trong cùng tp tin khai báo lp hoc trong
mt tp tin khác.
– Cú pháp khai báo và đnh ngha HTP ngoài lp:
kiu_tr_v tên_lp::tên_hàm(dsách_ths){
//ni dung hàm
}
• Cách khai báo này cho phép phân bitHTP vihàmt do, đng thi
cho phép 2 lpkhácnhaucócùngtênHTP.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.1 Khai báo và đnh ngha lp
– Các chi tit trong khai báo lp(tip)
• Chú ý khi đnh ngha hàm thành phn:
– Nu đnh ngha HTP trong lp, trình dch s ngmhiu chúng là hàm
inline
å
không đc đnh nghaquáphctp.
– Nên đnh ngha HTP ngoài lp: làm tng tính dđc, d hiu, tính m
quan cachng trình ngun.
– HTP đctruynhpti thành phnca đitng thuc cùng lpnu
chúng đc khai báo bên trong đnh nghahàmnh mt đitng
ccb hay mtthams hình thcca hàm.
– Có th giHTP t mt HTP khác trong cùng khai báo lp.
– g
i hàm trùng tên và danh sách tham s nhng gnvilpkhác,
phi thông qua đitng.
– gimt hàm t do trùng tên và danh sách tham s phis dng
phép toán phmvi “
::”.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.1 Khai báo và đnh ngha lp
– Các chi tit trong khai báo lp(tip)
• Phmvi lp
– Mc đích caphmvi làđ kim soát victruyxut đncác
bin/hng/hàm…
– Trong phnlptrìnhth tcvi C++, ta đãbitcóbnkiuphmvi
liên quan đncáchthcvàv trí khai báo bin: trong hàm nguyên
mu, trong khi, trong hàm và trong tp.
– Trong lp trình HT, C++ có thêm phmvi lp.
– Ttc thành phncalp
å
phmvi lp.
• C++ coi tt c thành phn ca lp là có liên h vi nhau.
• Trong đnh nghahàmthànhphncóth tham chiu đnbtk mt
thành phn nào khác cùng lp.
– Có th m rng phmvi lp đnlpdnxut, lpbn, …
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.1 Khai báo và đnh ngha lp
– Các chi tit trong khai báo lp(tip)
• Thuctínhtruyxutcacácthànhphn
– Thuc tính private : thuc tính này th hinmttrongcácđctrng
calp trình HT là che giu thông tin. Thành phn
private ch
đctruyxut bên trong phmvi lp.
– Thuc tính public: thành phn public có th truy xuttrongbtk
hàm nào. Thông qua HTP public ta có th truy nhp vào các thành
phn private (~ hàm giao dincalp).
– Trong đnh nghamtlp, s lng và th t các t khóa
private và
public là tu ý
å
khi khai báo lpcóth spxpli đ các thành
phn
private trên còn các thành phn public di.
– Thuc tính
private là ngm đnh, nên nut khóa private xut
hintrc tiên trong khai báo thành phn, có th lcb.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.1 Khai báo và đnh ngha lp
– Các chi tit trong khai báo lp(tip)
• Thuc tính truy xut ca các thành phn (tip)
– Ngoài public và private, còn có t khoá protected dùng đ ch
đnh trng thái ca các thành phntrongmtlp.
– T khoá
protected sđc đ cpk hntrongchng 7 (Thak
và đa hình).
– Trong phmvi calphintimt thành phn
protected có tính
chtging nh thành phn private.
• Lpvàcu trúc trong C++
– Cu trúc trong C++ ch có mt đim khác duy nht vi lp: thuc tính
truy xut ngm đnh là public thay vì private.
– Tt c các tính cht, kh nng… còn li ca lp đu có th áp dng
cho cu trúc.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.2 Thao tác vi đitng
– Truy nhp vào thành phnca đitng
• Truy nhpd liuthànhphn
– Ch có th truy nhp đn DLTP public. Lúc này có th thchinmi
thao tác x lý trên DLTP đó.
– Cú pháp truy nhp:
tên_đt.tên_dltp;
• Gihàmthànhphn
– Cng nh DLTP, ch có th gi đc HTP public. Gi HTP calp
t mt đitng ~ truyn thông đipchoHTP đó.
– Cú pháp gi hàm:
tên_đt.tên_htp(ds_tham_s);
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.2 Thao tác vi đi tng
– Truy nhp vào thành phnca đitng (tip)
• Tham s ngm đnh trong ligi hàm thành phn
– Ligi HTP luôn có mtvàch mtthams ngm đnh là đitng
thchinligihàm
å
ligi đócóth thao tác ngm đnh trên các
DLTP ca đitng đó.
• Phân bit khái nimnàyvi khái nimligihàms dng tham s có
giá tr ngm đnh.
– Không th thchinligiti HTP gnvimt đitng mà không
ch rõ đitng đc tham chiu.
• Con tr this
– T khoá
this : xác đnh đach ca đitng dùng làm tham s
ngm đnh cho HTP.
– Con tr this tham chiu đn đitng đang giHTP
å
có th truy
nhpgiántip đn các thành phn(d liu, hàm) ca đitng gi
HTP đó thông qua con tr this.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.2 Thao tác vi đi tng
– Phép gán đitng
• C ch gán đitng
– Có th thchin phép gán giahaiđitng cùng kiu.
– Phép gán thcchtlàvic sao chép giá tr các DLTP tđitng
ngun sang đitng đích mt cách tng ng (không kđólàcác
thành phn public hay private).
• Chú ý trong phép gán các đi tng cha DLTP đng:
– Vic sao chép DLTP không liên quan đn các vùng d liu đc cp
phát đng (“sao chép b mt”)
å
nh hng đnvicqunlýcpphát
đng.
– Vùng nhđng ca đitng đích bây gi sđctruynhpbicác
HTP cacđitng ngunvàđích
å
tính “riêng t”d liuca đi
tng b vi phm.
– Vùng nh đng trc đây trong đi tng ngun (nu có) bây gi
không th kim soát đc na.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.3 Các vn đ khác v hàm thành phn
– Nóithêmv hàm thành phn
• nh nghachng các hàm thành phn
– nh nghachng hàm đã đc đ cptrongchng 4.
– nh nghachng hàm cng áp dng đcchocácHTP. Khiđó HTP
đcphépgiti các HTP khác, thm chí trùng tên.
• Tham s vigiátr ngm đnh
– Ligi hàm vithams có giá tr ngm đnh đã đc đ cptrong
chng 4.
– Ligi HTP có th s dng giá tr ngm đnh cho các tham s. Giá tr
ngm đnh này sđc khai báo trong đnh nghaHTP hay trongkhai
báo nguyên mu canó(nu đnh ngha hàm ngoài lp).
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.2
6.2
L
L
í
í
p
p
v
v
µ
µ
®
®
è
è
i
i
t
t
−î
−î
ng
ng
6.2.3 Các vn đ khác v hàm thành phn
– S dng đitng nh tham s caHTP
• Truy nhp đn thành phn private trong đitng:
– HTP có quyntruynhp đn thành phn private ca đitng gi
nó (tc là đi tng thuc lp cha hàm).
• Truy nhp đn các thành phn private trong các tham s là đi
tng truyn cho HTTP:
– HTP có quyntruynhp đnttc thành phn private ca đi
tng, tham chiu đitng hay con trđitng cùng kiulpkhi
đcdùnglàthams hình thccanó.
• Dùng đitng nh giá tr tr v caHTP cùnglp:
– HTP có th truy nhp đn các thành phn private cacácđi
tng, tham chiu đitng hay con trđitng khai báo bên trong
nó(vàcóth tr vđitng này).
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.3
6.3
H
H
µ
µ
m
m
t
t
¹
¹
o v
o v
µ
µ
h
h
µ
µ
m
m
h
h
ñ
ñ
y
y
6.3.1 Hàm to
– Khái nim chung
• Hàm tolàHTP đcbitcalp, đc dùng đ todng đi
tng mi
– Là HTP không th thiucalp.
– Nungilp trình không khai báo và đnh ngha hàm to
å
trình
dch t torahàmto(làhàmtongm đnh).
• Khikhaibáođitng, trình dch cp phát b nh, sau đót
đng gi đnhàmto.
– Hàm tocónhimv khito giá tr cho DLTP, xin cpphátb nh
cho DLTP đng.
– Hàm tocng có th làm mts vickhác.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.3
6.3
H
H
µ
µ
m
m
t
t
¹
¹
o v
o v
µ
µ
h
h
µ
µ
m
m
h
h
ñ
ñ
y
y
6.3.1 Hàm to
– Nguyên tcvitvàs dng hàm to
• Tên cahàmtophi trùng vitêncalp.
– Cú pháp c bn: tên_lp();
• Hàm tophicóthuctínhpublic
• Hàm to không có ktqu tr v å không đc khai báo kiu.
– iu này là do hàm to đcgikhito đitng mi(chúý v cú
pháp!).
– Trong trng hpmuns dng giá tr tr vđkim soát li, ta s
dng c ch x lý li(sđc đ cptrongphnghichúchng).
• Hàm to có th có hoc không có tham s.
• Hàm to có th khai báo vi các tham s có giá tr ngm đnh.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.3
6.3
H
H
µ
µ
m
m
t
t
¹
¹
o v
o v
µ
µ
h
h
µ
µ
m
m
h
h
ñ
ñ
y
y
6.3.1 Hàm to
– Nguyên tcvitvàs dng hàm to(tip)
• Hàm tocóthđc xây dng bên trong hoc bên ngoài đnh
nghalp(ging nh HTP bình thng).
• Trong mtlpcóth có nhiuhàmto(đnh nghachng hàm
to).
– Lúc này victo đitng phi kèm theo tham s phù hpvimt
trong các hàm to đã đnh ngha.
• Khi dùng phép toán new cp phát b nh cho đi tng đng å
hàm to cng đc gi å cn cung cp danh sách tham s.
• Chú ý: vi trng hp tham s kiu lp ca hàm là tham s hình
thc å vic khai báo tham s đó không to ra đi tng ~ không
gi ti hàm to.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.3
6.3
H
H
µ
µ
m
m
t
t
¹
¹
o v
o v
µ
µ
h
h
µ
µ
m
m
h
h
ñ
ñ
y
y
6.3.1 Hàm to
– Hàm tongm đnh
• Nu không đnh nghahàmto å trình dch tđng b sung mt
hàm tongm đnh.
– Hàm này thc ra không làm vicgìc (thân hàm là rng).
• ôi khi ta cng ginhng hàm to không có tham s (do ngi
lptrìnhđnh ngha) là hàm tongm đnh.
– iu này cn đn khi khai báo mng các đitng : đ tránh likhai
báo, ít nhtphicómt hàm to không tham s.
– tránh li này, cng có th khai báo hàm tovitt c tham sđu
có giá tr ngm đnh.
Bài ging C++. 7/11/2008
V.S.Nam. B/m KTHT, khoa CNTT, HXD
6.3
6.3
H
H
µ
µ
m
m
t
t
¹
¹
o v
o v
µ
µ
h
h
µ
µ
m
m
h
h
ñ
ñ
y
y
6.3.2 Hàm hy
– Khái nim chung
• Hàm hy cng là mtHTP đcbitcalp å có chcnng
ngcvihàmto.
– Ging nh hàm to, hàm hy là hàm thành phnkhôngth thiu đi
vilp.
– Nungilp trình không khai báo và đnh ngha hàm hy
å
trình
dch t torahàmhy(làhàmhyngm đnh).
• Hàm hy đcgitrc khi gii phóng mt đitng.
– Thchinnhng vicnh gii phóng vùng nh mà đitng qunlý,
xoá đitng khi màn hình nunóđang hinth, …