DOUG LLOYD: Svo ef þú hefur séð vídeó okkar á mannvirki,
þú veist nú þegar að við höfum getu til að skilgreina eigin gögn okkar gerðum.
En ef þú hefur notað mannvirki, þú veist sem stundum með þeim gagnatög
geta raunverulega vera a lítill fyrirferðarmikill vegna þess að við
þarft að nota strúktúr leitarorð þegar við erum að vinna með them--
struct bíl eða struct nemandi.
Það er mikið til að slá ef við viljum bara að hafa
eitthvað einfalt, eins og uppbyggingu.
Við viljum have-- við viljum vera fær um að vinna með hluti
aðeins meira styttingin hátt, eins int eða char, eitthvað miklu
þægilegra að slá.
>> Sem betur fer, það er leið til að gera þetta í C,
með eitthvað sem kallast typedef, sem er leið til að búa til hugtak eða endurskrifa
nöfn gagnatög.
Þú getur umrita gögn tegundir sem þegar eru fyrir hendi,
eða þú getur skrifað gagnatög á eigin spýtur.
>> The fyrstur hlutur þú gera er þér skilgreina tegund á venjulegan hátt,
og þá alias bara það að eitthvað else-- typedef gamla nafn nýtt nafn.
Mjög einfalt, ekki satt?
Þannig að við gætum typedef td nú þegar fyrirliggjandi gögn
gerð óundirritaður bleikju sem bæti.
Og þá, héðan í frá, eftir að við höfum gerði þessi tegund definition-- aftur,
sem er yfirleitt að fara að vera efst punkts okkar C skrár, eða í punktur h skrá
sérstaklega, við getum bara nota bíta alls staðar
við hefðum notað óundirritaður bleikju.
Það er mikið styttri að gerð.
>> Í bókasafninu CS50 er, gera við this-- við typedef bleikju stjörnuna sem streng.
Þar sem við horfir burt hugmynd af ábendingum.
Og sú staðreynd að band er í raun bendi á fyrsta character--
fylki af stöfum, vegna þess að það er bara
svo ruglingslegt að fá höfuðið í kring that-- en í raun það er það sem við gerum.
Og þessi lína af kóða í raun til í CS50 punktur h typedef bleikju stjörnu band,
bara til að gera það aðeins minna fyrirferðarmikill að þurfa að takast á við.
Þegar þú hefur séð sennilega svolítið um gildi hér,
en typedef verður frábær þegar þau eru gefin með mannvirki,
eins og ég vék að áðan.
Mannvirki hafa tveggja orða tegund nafn.
Og svo þeir geta verið mjög pirrandi til að búa til breytur af því tagi,
eða [inaudible] af struct eitthvað, þinn Línurnar geta bara virkilega, virkilega lengi.
Og svo þú getur notað typedef að koma upp með eitthvað mikið styttri.
>> Svo ef ég skilgreina bíl sem hér segir, ég hef Skilgreining mín á car-- struct bíl,
og þá opna hrokkið Brace, allt akurland uppbyggingu mína,
nálægt hrokkið Brace, hálf-colon-- eftir að ég hef skilgreint gögn tegund mína,
Ég get typedef strúktúr bíll eins og bíll undirstrik t.
Og svo þegar ég hef gert það, nú á hverjum þegar ég hefði annars notað struct
bíll, ég get bara notað bílinn undirstrik t.
Það er mikið styttri um leið til að tjá þessa hugmynd þessa mannvirkis
sem ég stofnaði bara.
>> Einnig, vegna þess að mannvirki eru svo almennt notuð í typedef,
það er a-- þú getur raunverulega skilgreina tegund í milli byrjun og enda.
Svo typedef uppbygging aftur er yfirleitt typedef, gamla nafn, nýtt nafn,
þar sem nöfn eru nú þegar tegundir sem þú hefur búið til.
En þú getur raunverulega að skilgreina uppbyggingu réttur í the miðja af the typedef
í stað þess að þurfa að skilgreina það sérstaklega, og þá
gera typedef af því.
Og það myndi líta bara eins og this-- typedef strúktúr bíll,
opinn hrokkið Brace, öll akur þinn skilgreiningar, nálægt hrokkið Brace, bíll t.
Svo gamla nafn er allt það efni í rautt, þú ert bara að skilgreina uppbyggingu
og að tilgreina það á sama tíma.
Og þá nýtt nafn er bíll undirstrik ekki.
Og svo ef við byrjum að nota þetta í kóða, áður I
gæti hafa sagt, struct bíll mycar hálf-hreinsun.
Jæja ég þarf ekki að gera það lengur.
Nú þegar ég hef notað typedef, ég getur bara sagt bíll undirstrika t, mycar.
Það er mikið styttri um leið að gera það, og í raun, það er
að fara til vera a einhver fjöldi fleiri þægilegt, sérstaklega
eins og þú byrjar að nota mannvirki a einhver fjöldi fleiri í kóðann þinn.
>> Ég er Doug Lloyd.
Þetta er CS50.