-1-
Ch
Ch
Ch
Ch
ơ
ơ
ơ
ơ
ng
ng
ng
ng
1
1
1
1
L
L
L
L
ậ
ậ
ậ
ậ
p
p
p
p
tr
tr
t
t
t
t
ợ
ợ
ợ
ợ
ng
ng
ng
ng
ph
ph
ph
ph
ơ
ơ
ơ
ơ
ng
ng
ng
ng
ph
ph
ph
ph
á
á
b
b
b
b
à
à
à
à
i
i
i
i
to
to
to
to
á
á
á
á
n
n
n
n
m
m
m
m
ớ
ớ
p
p
p
p
l
l
l
l
ậ
ậ
ậ
ậ
p
p
p
p
tr
tr
tr
tr
ì
ì
ì
ì
nh
nh
nh
nh
TừnhiềunămnaychúngtađãnghenhiềuđếnthuậtngữLậptrìnhhớngđối
tợng(OOP-ObjectOrientedProgramming).Vậythựcchấtnólàgì?Đểhiểu
tuy
tuy
ế
ế
ế
ế
n
n
n
n
t
t
t
t
í
í
í
í
nh
nh
nh
nh
.Khoahọcmáytínhngàycàngpháttriển,cácphầnmềm
đòihỏingàycàngphứctạpvàlớnhơnrấtnhiều.Đếnlúcnàyphơngpháplậptrình
tuyếntínhtỏrakémhiệuquảvàcónhữngtrờnghợpngờilậptrìnhkhôngthể
kiểmsoátđợcchơngtrình.Thếlàphơngphápl
l
l
l
ậ
u
tr
tr
tr
tr
ú
ú
ú
ú
c
c
c
c
(LTCT)rađời.
Theocáchtiếpcậnnày,chơngtrìnhđợctổchứcthànhcácchơngtrìnhcon.
Mỗichơngtrìnhconđảmnhậnxửlýmộtcôngviệcnhỏtrongtoànbộhệthống.
Mỗichơngtrìnhconnàylạicóthểchianhỏthànhcácchơngtrìnhconnhỏhơn.
Quátrìnhphânchianhvậytiếptụcdiễnrachođếncácchơngtrìnhconnhỏnhận
đợcđủđơngiản.Ngờitagọiđólàquátrìnhlàmmịndần.Cácchơngtrìnhcon
tơngđốiđộclậpvớinhau,dođócóthểphâncôngchotừngnhómđảmnhậnviết
cácchơngtrìnhconkhácnhau.Ngônngữlậptrìnhthểhiệnrõnétnhấtphơng
pháplậptrìnhcấutrúcchínhlàPascal.Tuynhiên,khisửdụngphơngpháplập
trìnhnàyvẫncòngặpmộtkhókhănlớnlàtổchứcdữliệucủahệthốngnhthếnào
trongmáytính.BởivìtheoquanđiểmcủaLTCTthì
Chơngtrình=Cấutrúcdữ
liệu+Giảithuật
.Đểlàmđợcviệcnàyđòihỏingờilậptrìnhphảicókiếnrất
vữngvềcấutrúcdữliệu.Mộtkhókhănnữagặpphảilàgiảithuậtcủachơngtrình
phụthuộcrấtchặtchẽvàocấutrúcdữliệu,dovậychỉcầnmộtsựthayđổinhỏở
cấutrúcdữliệucũngcóthểlàmthayđổigiảithuậtvànhvậyphảiviếtlạichơng
ớ
ớ
ớ
ớ
ng
ng
ng
ng
đố
đố
đố
đố
i
i
i
i
t
t
t
t
ợ
ợ
ợ
ợ
ng
ng
ng
ng
(LTHĐT).Điểmcănbảncủa
phơngphápnàylàthiếtkếchơngtrìnhxoayquanhdữliệucủahệthống.Nghĩa
á
á
n
n
n
n
quan
quan
quan
quan
h
h
h
h
ệ
ệ
ệ
ệ
gia
gia
gia
gia
đì
đì
đì
đì
nh
nh
nh
nh
ắ
ng
ng
ng
ng
Ms.
Ms.
Ms.
Ms.
Nga
Nga
Nga
Nga
Mr.
Mr.
Mr.
Mr.
Quang
Quang
Quang
Quang
Mr.
Mr.
Mr.
Mr.
H
H
H
H
Mai
Miss.
Miss.
Miss.
Miss.
Trang
Trang
Trang
Trang
Mr.
Mr.
Mr.
Mr.
Tu
Tu
Tu
Tu
ấ
ấ
ấ
ấ
n
n
n
n
Ms.
Ms.
Ms.
Ms.
H
ng
ng
ng
ng
ờ
ờ
ờ
ờ
i
i
i
i
.Đểbiếtmốiquanhệgiađìnhcủamỗicá
thể,cầnthểhiệnmộtsốquanhệcơbảnnhcha,mẹ,anhem,concái,vợchồngcủa
cáthểđó.Nhvậy,mỗiđốitợngconngờicủabàitoáncócácthuộctínhriêng,
nóilênrằngchamẹ,anhem,v.v củahọlàai.Ngoàiracũngcầncómộtthuộctính
nữachobiếttêncáthểlàgì.Cóthểmôtảmộtlớpcácđốitợngconngờinh
hình1.3.
Nếuchỉcónhvậythìchẳngkhácgìmộtcấutrúchaybảnghitrongcấutrúc
dữdiệuđợcsửdụngởphơngphápLTCT.VấnđềởđâylàphơngphápLTHĐT
xemcácmốiquanhệtronggiađìnhđợchìnhthànhmộtcáchtựnhiêndocácsự
kiệncụthểtrongcuộcsốngtạonên.Vídụ,khingờiphụnữsinhcon,đứaconcô
Con
Con
Con
Con
ng
ng
ng
ng
ng
Ms.
Ms.
Ms.
Ms.
Nga
Nga
Nga
Nga
Mr.
Mr.
Mr.
Mr.
Quang
Quang
Quang
Quang
Mr.
Mr.
Mr.
Mr.
H
H
H
H
ng
Miss.
Trang
Trang
Trang
Trang
Mr.
Mr.
Mr.
Mr.
Tu
Tu
Tu
Tu
ấ
ấ
ấ
ấ
n
n
n
n
Ms.
Ms.
Ms.
Ms.
H
H
H
H
ằ
Lan
-
-
--
Hình1.2Mởrộngquanhệgiữacácgiađình
NgônngữC++
-4-
tasinhrasẽcómẹlàcôtavàchalàchồngcôta,đồngthờianhchồngphảiđợc
cậpnhậtđểcóthêmđứaconnày.Nhữngđứacontrớccủacôtasẽcóthêmđứaem
nàyvàđứabécóthêmnhữngngờianhhoặcngờichịđó.Dễdàngthấyrằngcó
haisựkiệnchínhtácđộngđếnmốiquanhệgiađìnhlàsựsinhconcủangờiphụ
nữvàhônnhângiữahaicáthểkhácgiớitrongxãhội.Cácsựkiệnnàygắnliềnvới
từngconngờitrongbàitoán.Điềunàycónghĩalàkhinóiđếnmộtsựkiệnnàothì
phảichỉranóđợcphátsinhbởingờinào.Vídụ,khinóisựkiệnsinhconthìphải
biếtngờinàosinh.Khimộtsựkiệncủamộtconngờinàođóxảyra(vídụnh
sinhcon)thìcácthuộctínhcủachínhanhtasẽbịthayđổi,đồngthờithuộctínhcủa
mộtsốđốitợngliênquancũngcóthểthayđổitheo.Quátrìnhđónggóigiữacác
sựkiệnvàthuộctínhsẽtạoraĐố
Đố
Đố
Đố
i
i
i
hệgiađìnhdựatrêncácsựkiệncuộcsống.Giảthiếtlàđãcóhaiđốitợnglàông
ThắngvàbàMai.
Ms.
Ms.
Ms.
Ms.
Mai
Mai
Mai
Mai
Mr.
Mr.
Mr.
Mr.
Th
Th
Th
Th
ắ
ắ
ắ
ắ
ng
ng
ng
ng
Mr.
Mr.
Mr.
Mr.
ờ
ờ
i
i
i
i
Tên?
Cha?
Mẹ?
Anhem?
Concái?
Vợ/Chồng?
Sinhcon
Cới
Hình1.4Cácsựkiệnbổsunggắnvớiconngời.
Lậptr
ì
nhhớngđố
it
ợng
-5-
Cácsựkiệnđểtạoracâyquanhệtrêncóthểviếttheotrậttựnhsau:
Thắng.Cới(Mai)
Mai.Sinhcon(gái,Nga)
Mai.Sinhcon(trai,Tuấn)
Cácsựkiệnviếttheocúpháp:
Nhvậycácbạnđãthấyrằngchúngtakhôngcầnphảiquantâmđếncáchtạo
mộtcấutrúccâyquanhệnhthếnàobêntrongdữliệucủachơngtrìnhmàvẫncó
thểcungcấpdữliệubàitoánchochơngtrìnhthôngquacácsựkiệnnhtrên.
Chúngtaquaylạivấnđềchínhcủabàitoánlàtrảlờicáccâuhỏivềmốiquanhệ
Anhem?
Concái?
Vợ/Chồng?
Sinhcon
Cới
Làanh
Làôngnội
Hình1.5Thêmcácphơngthứctrảlờicâuhỏi
Đốitợngtạosựkiện.Sựkiện(thôngsốkèmtheosựkiện)
NgônngữC++
-6-
toàntơngtựđốivớicáccâuhỏiquanhệgầnnhlàem,làchị,làbố,làmẹ, Còn
câuhỏinhĐốitợngcóphảilàôngnộicủaYkhông?phứctạphơnchútít.Để
trảlờiđợccáccâuhỏicóquanhệxanhthếtaphảidựavàokếtquảtrảlờicủa
cáccâuhỏivềcácquanhệgầngũihơn.ĐểbiếtđợcXđúnglàôngnộicủaYthì
phảichỉramộtngờiZnàođómàXlàbốcủaZvàZlàbốcủaY.Nếukhôngchỉ
rađợcZthìXkhôngphảilàôngnộicủaY.ViệctìmkiếmZhoàntoànđơngiản
bởivìchơngtrìnhquảnlýtậpcácđốitợngconngời.HãytìmZtrongtậpđối
tợngConngời.Cóthểthấycâuhỏibanđầuđãđợcphânchiathànhhaicâuhỏi
đơngiảnvớichúngmàđãcócáchtrảlời.Tómlại,cácvấnđềcủabàitoánđãđợc
giảiquyếtkhitiếpcậntheophơngphápLTHĐT.Mộtlợiđiểmcóthểthấyngaylà
bàitoánđợcphântíchrấtgầnvớithựctếvàtựnhiên.
Trênđâymớichỉlàsựphântíchsơkhaibàitoándựatheophơngpháp
LTHĐT.ĐểlàmhoànchỉnhđợcbàitoáncòncầnmộtsốkĩthuậtcủaLTHĐTnh
tínhkếthừa,tínhđahình, Chúngtôihyvọngrằngquasựphântíchmộtbàitoán
nhỏtrênđãchứngtỏđợclợiíchcủaphơngphápLTHĐT.Trongmụctiếptheo
chúngtôisẽtómtắtvàđaratổngquansơbộvềLTHĐT.
3.
3.
ớ
ớ
ớ
ớ
ng
ng
ng
ng
đố
đố
đố
đố
i
i
i
i
t
t
t
t
ợ
ợ
ợ
ợ
ng
ng
ng
ng
Lậptrìnhhớngđốitợngđặttrọngtâmvàođốitợng,yếutốquantrọng
trongquátrìnhpháttriểnchơngtrìnhvàkhôngchophépdữliệubiếnđộngtựdo
B
B
B
Dữliệu
Hàm
Đố
Đố
Đố
Đố
i
i
i
i
t
t
t
t
ợ
ợ
ợ
ợ
ng
ng
ng
ng
A
A
A
A
Dữliệu
ì
nhhớngđố
it
ợng
-7-
2.Chơngtrìnhđợcchiathànhcácđốitợng.
3.Cáccấutrúcdữliệuđợcthiếtkếsaochođặctảđợcđốitợng.
4.Cáchàmthaotáctrêncácvùngdữliệucủađốitợngđợcgắnvớicấu
trúcdữliệuđó.
5.
Dữliệuđợcđónggóilại,đợcchegiấuvàkhôngchophépcáchàm
ngoạilaitruynhậptựdo.
6.Cácđốitợngtácđộngvàtraođổithôngtinvớinhauquacáchàm
7.Cóthểdễdàngbổsungdữliệuvàcáchàmmớivàođốitợngnàođó
khicầnthiết
8.Chơngtrìnhđợcthiếtkếtheocáchtiếpcậntừdớilên(bottom-up).
SauđâylàmộtsốkháiniệmđợcsửdụngtrongLTHĐT.
3.1
3.1
3.1
3.1
M
M
M
M
ộ
ộ
ộ
ộ
t
ệ
m
m
m
m
Đố
Đố
Đố
Đố
i
i
i
i
t
t
t
t
ợ
ợ
ợ
ợ
ng
ng
ng
ng
(object)
(object)
(object)
(object)
Đốitợnglàsựkếthợpgiữadữliệuvàthủtục(haycòngọilàcácphơngthức
ữ
ữ
ữ
ữ
li
li
li
li
ệ
ệ
ệ
ệ
u
u
u
u
+
+
+
+
Ph
Ph
Ph
Ph
ơ
ơ
ơ
ơ
ng
ng
LớplàmộtkháiniệmmớitrongLTHĐTsovớicáckỹthuậtlậptrìnhkhác.Đó
làmộttậpcácđốitợngcócấutrúcdữliệuvàcácphơngthứcgiốngnhau(haynói
cáchkháclàmộttậpcácđốitợngcùngloại).Nhvậykhicómộtlớpthìchúngta
sẽbiếtđợcmộtmôtảcấutrúcdữliệuvàphơngthứccủacácđốitợngthuộclớp
đó.Mỗiđốitợngsẽlàmộtthểhiệncụthể(instance)củalớpđó.Tronglậptrình,
chúngtacóthểcoimộtlớpnhlàmộtkiểu,còncácđốitợngsẽlàcácbiếncó
kiểucủalớp.
Nguy
Nguy
Nguy
Nguy
ê
ê
ê
ê
n
n
n
n
t
t
t
t
ắ
ắ
ắ
ắ
c
c
c
li
li
li
ệ
ệ
ệ
ệ
u
u
u
u
TrongLTCTtađãthấylàcáchàmhaythủtụcđợcsửdụngmàkhôngcần
biếtđếnnộidungcụthểcủanó.Ngờisửdụngchỉcầnbiếtchứcnăngcủahàm
cũngnhcácthamsốcầntruyềnvàođểgọihàmchạymàkhôngcầnquantâmđến
nhữnglệnhcụthểbêntrongnó.Ngờitagọiđólàsựđónggóivềchứcnăng.
TrongLTHĐT,khôngnhữngcácchứcnăngđợcđónggóimàcảdữliệucũng
nhvậy.Vớimỗiđốitợngngờitakhôngthểtruynhậptrựctiếpvàocácthành
phầndữliệucảunómàphảithôngquacácthànhphầnchứcnăng(cácphơngthức)
đểlàmviệcđó.
Chúngtasẽthấysựđónggóithựcsựvềdữliệuchỉcótrongmộtngônngữ
LTHĐTthuầnkhiết(pure)theonghĩacácngônngữđợcthiếtkếngaytừđầuchỉ
NgônngữC++
-8-
choLTHĐT.Cònđốivớicácngônngữlai(hybrid)đợcxâydựngtrêncácngôn
ngữkhácbanđầuchaphảilàHĐTnhC++đợcnóiđếntrongcuốnsáchnày,
vẫncónhữngngoạilệnhấtđịnhviphạmnguyêntắcđónggóidữliệu.
T
T
T
T
(inheritance)
(inheritance)
MộtkháiniệmquantrọngcủaLTHĐTlàsựkếthừa.Sựkếthừachophép
chúngtađịnhnghĩamộtlớpmớitrêncơsởcáclớpđãtồntại,tấtnhiêncóbổsung
nhữngphơngthứchaycácthànhphầndữliệumới.Khảnăngkếthừachophép
chúngtasửdụnglạimộtcáchdễdàngcácmodulechơngtrìnhmàkhôngcầnmột
thayđổicácmoduleđó.RõràngđâylàmộtđiểmmạnhcủaLTHĐTsovớiLTCT.
T
T
T
T
í
í
í
í
nh
nh
nh
nh
đ
đ
đ
đ
a
a
a
a
h
h
h
á
á
c
c
c
c
u
u
u
u
đ
đ
đ
đ
i
i
i
i
ể
ể
ể
ể
m
m
m
m
chơngtrìnhlặplạitrongquátrìnhmôtảcáclớpvàcóthểmởrộngkhả
năngsửdụngcủacáclớpđãxâydựngmàkhôngcầnphảiviếtlại.
2.Chơngtrìnhđợcxâydựngtừnhữngđơnthể(đốitợng)traođổivới
nhaunênviệcthiếtkếvàlậptrìnhsẽđợcthựchiệntheoquytrìnhnhất
địnhchứkhôngphảidựavàokinhnghiệmvàkỹthuậtnhtrớcnữa.Điều
nàyđảmbảorútngắnđợcthờigianxâydựnghệthốngvàtăngnăngsuất
laođộng.
3.Nguyênlýđónggóihaychegiấuthôngtingiúpngờilậptrìnhtạorađợc
nhữngchơngtrìnhantoànkhôngbịthayđổibởinhữngđoạnchơng
trìnhkhác.
4.Cóthểxâydựngđợcánhxạcácđốitợngcủabàitoánvàođốitợng
chơngtrình.
5.Cáchtiếpcậnthiếtkếđặttrọngtâmvàodữliệu,giúpchúngtaxâydựng
đợcmôhìnhchitiếtvàdễdàngcàiđặthơn.
Lậptr
ì
nhhớngđố
it
ợng
-9-
6.Cáchệthốnghớngđốitợngdễmởrộng,nângcấpthànhnhữnghệlớn
hơn.
7.Kỹthuậttruyềnthôngbáotrongviệctraođổithôngtingiữacácđốitợng
làmchoviệcmôtảgiaodiệnvớicáchệthốngbênngoàitrởnênđơngiản
hơn.
8.Cóthểquảnlýđợcđộphứctạpcủanhữngsảnphẩmphầnmềm.
3.3
3.3
3.3
3.3
ng
ng
c
c
c
c
ủ
ủ
ủ
ủ
a
a
a
a
LTH
LTH
LTH
LTH
Đ
Đ
Đ
Đ
T
T
T
T
LTHĐTlàmộttrongnhữngthuậtngữđợcnhắcđếnnhiềunhấthiệnnay
trongcôngnghệphầnmềmvànóđợcứngdụngđểpháttriểnphầnmềmtrong
nhiềulĩnhvựckhácnhau.Trongsốđó,ứngdụngquantrọngvànổitiếngnhấthiện
naylàthiếtkếgiaodiệnvớingờisửdụng,kiểunhWindows.Cáchệthôngtin
á
á
á
c
c
c
c
ng
ng
ng
ng
ô
ô
ô
ô
n
n
n
n
ng
ng
ng
ng
ữ
ữ
ữ
ữ
l
l
l
ng
ng
ng
đố
đố
đố
đố
i
i
i
i
t
t
t
t
ợ
ợ
ợ
ợ
ng
ng
ng
ng
LTHĐTkhôngphảilàđặcquyềncủamộtngônngữđặcbiệtnào.Cũnggiống
nhkỹthuậtlậptrìnhcócấutrúc,cáckháiniệmtrongLTHĐTđợcthểhiệntrong
nhiềungônngữlậptrìnhkhácnhau.Nhữngngônngữcungcấpđợcnhữngkhả
năngLTHĐTđợcgọilàngônngữlậptrìnhhớngđốitợng.Tuyvẫncónhững
ngônngữchỉcungcấpkhảnăngtạolớpvàđốitợngmàkhôngchophépkếthừa,
dođóhạnchếkhảnăngLTHĐT.Hình1.7chochúngtamộtcáinhìntổngquanvề
sựpháttriểncácngônngữLTHĐT.
ng
ữ
ữ
ữ
ữ
l
l
l
l
ậ
ậ
ậ
ậ
p
p
p
p
tr
tr
tr
tr
ì
ì
ì
ì
nh
nh
nh
nh
C++
đổitừmộtmôitrờngnàysangmôitrờngkhác,nhchúngtađãbiếtC++nhlà
mộtsựbổsungkhảnăngLTHĐTvàongônngữC.Sẽcónhiềungờinghĩrằng
ngônngữCnóiởđâylàCtheochuẩnANSI.Thựcrakhôngphảihoàntoànnhvậy.
TênthựctếvẫntồntạimộtvàiđiểmkhôngtơngthíchgiữaANSICvàC++.
MặtkháccũngcầnthấyrằngnhữngmởrộngcótrongC++sovớiAnsiC
khôngchỉlàđểphụcvụchomụcđíchtạochongônngữkhảnăngLTHĐT.Có
nhữngthayđổichỉvớimụcđíchđơnthuầnlàtăngsứcmạnhchongônngữChiện
thời.
NgoàiracómộtvàithayđổinhỏởC++sovớiANSICnhsau:
*
Địnhnghĩacáchàm:khaibáo,truyềnthamsốvàgiátrị
trảlại.
*Sựtơngthíchgiữacáccontrỏ.
*
Tínhlinhhoạtcủacáchằng(const).
C
C
C
C
á
á
á
á
c
c
c
c
đặ
đặ
đặ
r
r
r
ộ
ộ
ộ
ộ
ng
ng
ng
ng
trong
trong
trong
trong
C++
C++
C++
C++
NhđãđềcậpởtrênC++chứacảnhữngmởrộngsovớiCmàkhôngliên
quanđếnkỹthuậthớngđốitợng.Nhữngmởrộngnàysẽđợcmôtảcụthểtrong
chơngsau,ởđâychúngtachỉtómtắtlạimộtvàiđiểmchính.
*Khảnăngviếtcácdòngchúthíchmới.
*
Khảnăngkhaibáolinhhoạthơn.
*Khảnăngđịnhnghĩalạicáchàm:cáchàmcùngtêncóthể
thựchiệntheonhữngthaotáckhácnhau.Cáclờigọihàmsẽdùngkiểu
vàsốthamsốđểxácđịnhđúnghàmnàocầnthựchiện.
*
Cóthêmcáctoántửđịnhnghĩabộnhớđộngmới:newvà
chúngtađónggóidữliệunhngnókhôngbắtbuộcchúngtathựchiệnđiềuđó.
ĐâylàmộtnhợcđiểmcủaC++.TuynhiêncũngcầnthấyrằngbảnthânC++chỉ
làsựmởrộngcủaCnênnókhôngthểlàmộtngônngữLTHĐTthuầnkhiếtđợc.
NgônngữC++
-12-
C++chophéptađịnhnghĩacáchàmthiếtlập(constructor)chomộtlớp.Hàm
thiếtlậplàmộtphơngthứcđặcbiệtđợcgọiđếntạithờiđiểmmộtđốitợngcủa
lớpđợctạora.hàmthiếtlậpcónhiệmvụkhởitạomộtđốitợng:cấpphátbộnhớ,
gáncácgiátrịchocácthànhphầndữliệucũngnhviệcchuẩnbịchỗchocácđối
tợngmới.Mộtlớpcóthểcómộthaynhiềuhàmthiếtlập.Đểxácđịnhhàmthiết
lậpnàocầngọiđến,chơngtrìnhbiêndịchsẽsosánhcácđốisốvớicácthamsố
truyềnvào.Tơngtựnhhàmthiếtlập,mộtlớpcóthểcómộthàmhuỷbỏ
(destructor),mộtphơngthứcđặcbiệtđợcgọiđếnkhiđốitợngđợcgiảiphóng
khỏibộnhớ.
LớptrongC++thựcchấtlàmộtkiểudữliệudongờisửdụngđịnhnghĩa.
Kháiniệmđịnhnghĩachồngtoántửchophépđịnhnghĩacácphéptoántrênmột
lớpgiốngnhcáckiểudữliệuchuẩncủaC.Vídụtacóthểđịnhnghĩamộtlớpsố
phứcvớicácphéptoáncộng,trừ,nhân,chia.
CũnggiốngnhC,C++cókhảnăngchuyểnđổikiểu.Khôngnhữngthế,C++
cònchophépmởrộngsựchuyểnđổinàysangcáckiểudongờisửdụngtựđịnh
nghĩa(cáclớp).Vídụ,tacóthểchuyểnđổitừkiểuchuẩnintcủaCsangkiểusố
phứcmàtađịnhnghĩachẳnghạn.
C++chophépthựchiệnkếthừacáclớpđãxâydựng.Từphiênbản2.0trởđi,
C++cònchophépmộtlớpkếthừacùngmộtlúctừnhiềunhiềulớpkhácnhau(gọi
làsựđakếthừa).
CuốicùngC++cungcấpnhữngthaotácvàoramớidựatrêncơsởkháiniệm
luồngdữliệu(flow).Sựuviệtcủacácthaotácnàyởchỗ:
*
Sửdụngđơngiản.
*Kíchthớcbộnhớđợcrútgọn.