Doug LLOYD: Taigi, jei jūs matyti mūsų vaizdo struktūras,
Jūs jau žinote, kad mes turime Gebėjimas apibrėžti mūsų pačių duomenų tipus.
Bet jei jūs naudojote struktūras, jūs žinote, kad kartais naudojant šias duomenų tipai
tikrųjų gali būti šiek tiek sudėtinga, nes mes
turite naudoti struct raktažodį kai mes dirbame su them--
konstrukto automobilį ar konstrukto studentas.
Tai daug rašyti jei mes tiesiog norime turėti
kažkas paprasta, kaip struktūra.
Mes norime have-- norime būtų galima dirbti su ką
šiek tiek daugiau sutrumpinimas būdas, kaip int ar char, kažkas daug
patogiau rašyti.
>> Laimei, yra būdas tai padaryti C,
su kažkuo vadinamas Typedef, kuris yra būdas sukurti stenografistų arba perrašyti
pavadinimai duomenų tipų.
Jūs galite perrašyti duomenis rūšys, kurios jau egzistuoja,
arba galite rašyti duomenų tipus savo.
>> Pirmas dalykas, kurį jūs darote, yra jums apibrėžti tipas įprastu būdu,
ir tada jums tiesiog Alias ​​ją į kažką else-- Typedef senas pavadinimas naują pavadinimą.
Gana paprasta, tiesa?
Kad galėtume Typedef pavyzdžiui, jau esamų duomenų
tipo unsigned char kaip baitas.
Ir tada, nuo šiol, po mes padarė šio tipo definition-- vėl,
kuris paprastai yra bus viršuje mūsų dot C failus, arba dot H failą
atskirai, mes galime tik naudoti bite visur
būtume naudojamas unsigned char.
Tai daug trumpesnis tipo.
>> Be CS50 bibliotekoje, mes this-- mes Typedef char žvaigždę kaip eilutę.
Kadangi mes išgaunamo Pašalink rodyklės idėja.
Ir tai, kad eilutė yra tikrai rodyklė į pirmą character--
AN simbolių masyvas, nes tai tik
taip sunku gauti savo galvą aplink that-- bet iš tikrųjų tai, ką mes darome.
Ir tai kodo eilutę iš tiesų egzistuoja į CS50 DOT H Typedef char žvaigždutėmis eilutę,
tik, kad kad mažiau sudėtinga susidurti su.
Jau mačiau tikriausiai Šiek tiek vertės čia
bet Typedef tampa puikus kai ji derinama su struktūromis,
kaip aš užsiminiau anksčiau.
Statiniai turi dviejų žodžių tipo pavadinimą.
Ir todėl jie gali būti tikrai erzina sukurti kintamuosius tos rūšies,
arba [nesigirdi] ir struct kažką, jūsų linijos gali tiesiog gauti tikrai, tikrai ilgai.
Ir todėl jūs galite naudoti Typedef ateiti su kažkuo daug trumpesnis.
>> Taigi, jei aš apibrėžti automobilį taip, turiu mano apibrėžimas car-- struct automobiliu,
ir tada atidaryti garbanotas petnešomis, visa Į mano struktūros laukai,
Uždaryti garbanotas petnešomis, pusiau colon-- Po Aš apibrėžta mano duomenų tipą,
Galiu Typedef konstrukto automobilių, automobilių apatinio t.
Ir tada, kai aš padariau, kad dabar kiekvienas Aš laikas būtų kitaip nenaudojamos konstrukto
Automobilių, galiu tik naudotis automobilių apatinį t.
Tai daug trumpesnis būdas išreikšti šią šios struktūros idėją
kad aš ką tik sukūrėte.
>> Alternatyviai, nes struktūrų yra taip, paprastai naudojamos Typedef,
ten a-- jūs iš tikrųjų galite nustatyti įveskite tarp pradžios ir pabaigos.
Taigi Typedef struktūra vėl yra paprastai Typedef, senas pavadinimas, naujas vardas,
kur pavadinimai jau yra tipų, kad jūs sukūrėte.
Bet jūs iš tikrųjų galite apibrėžti struktūrą tiesiai į vidurį Typedef
vietoj to, kad apibrėžti ji atskirai, o tada
padaryti jį Typedef.
Ir tai atrodytų kaip this-- Typedef konstrukto automobilis,
atvira garbanotas petnešomis, visi savo srityje apibrėžimai, netoli garbanotas petnešomis, automobilių t.
Taigi senas pavadinimas yra viskas, stuff raudona, jūs tiesiog apibrėžti struktūrą
ir pavadinimo jį tuo pačiu metu.
Ir tada naujas vardas yra automobilių pabraukimas t.
Ir todėl, jei mes pradėsime naudoti tai kodas, anksčiau aš
galėjo sakė, konstrukto Automobilių mycar kabliataškis.
Na aš neturiu daryti, kad nebėra.
Dabar, kad aš naudojamas Typedef, aš gali tiesiog pasakyti, automobilių apatinį t, mycar.
Tai daug trumpesnis būdu tai padaryti ir iš tiesų, tai
bus daug daugiau patogu, ypač
kaip jums pradėti naudoti struktūras daug daugiau savo kodą.
>> Aš Doug Lloyd.
Tai CS50.