Doug LLOYD: Torej, če ste videli naš video na objektih,
že veste, da imamo sposobnost, da opredelijo svoje lastne podatkovne tipe.
Ampak, če ste rabljenih struktur, veste da včasih uporabi teh vrst podatkov
lahko dejansko malo nerodno, ker mi
morali uporabiti struct ključno besedo ko delamo z them--
struct avto ali struct študent.
To je veliko, da tip če smo le želeli imeti
nekaj preprostega, kot strukturo.
Želimo have-- želimo biti sposoben delati stvari
malo več Stenografski način, kot int ali char, nekaj veliko
bolj primeren za tip.
>> Na srečo, tam je način, da to storite v C,
z nečim, kar se imenuje typedef, ki je način za ustvarjanje okrajšava ali predelajo
Imena za podatkovne tipe.
Lahko reportaža podatke Vrste, ki že obstajajo,
ali lahko napišete podatkovne tipe svoje.
>> Prva stvar, kar morate storiti je vas opredeliti vrsto na običajen način,
in potem si ga ALIAS nečemu else-- typedef staro ime novo ime.
Precej preprosto, kajne?
Tako smo typedef npr že obstoječi podatki
tip unsigned char kot bajt.
In potem, od zdaj naprej, ko smo jih je ta vrsta definition-- spet,
ki se običajno bo na vrhu naših dot datotek C, ali v H dot datoteko
ločeno, smo lahko samo Uporabljajte ugriz povsod
mi pa bi uporabili nepodpisane char.
To je veliko krajši, da tip.
>> V knjižnici CS50 je, delamo this-- smo typedef char zvezdo kot niz.
Ker smo načrpane stran ideja kazalcev.
In dejstvo, da je niz res kazalec na prvi character--
niz znakov, saj to je samo
tako zmedeno, da bi dobili svojo glavo okoli that-- ampak v dejstvu, da je tisto, kar počnemo.
In ta vrstica kode dejansko obstaja v CS50 Dot H typedef char zvezdicami vrvico,
samo, da bi to malo manj okorni, da se morajo ukvarjati s.
Že ste videli verjetno malo vrednosti tod
vendar typedef postane velik v kombinaciji s strukturami,
kot sem namignil že prej.
Strukture imajo dve besedni ime tipa.
In tako so lahko zelo nadležno ustvariti spremenljivke tega tipa,
ali [neslišno] z dne struct nečesa, vaš linije lahko samo zares, zares dolgo.
In tako lahko uporabite typedef priti z nekaj veliko krajši.
>> Torej, če sem opredeliti avto takole, imam Moja definicija car-- struct avto,
in nato odprite kodrasti naramnicami, vse polja mojega strukture,
blizu kodrasti naramnicami, semi-colon-- ko sem definirana mojo vrsto podatkov,
Znam typedef struct avto kot avto podčrtaja t.
In potem, ko sem storil, da se zdaj vsak ko sem bi sicer uporabili struct
avto, lahko sem samo uporabo avtomobila podčrtaj t.
To je veliko krajši, kako bi izražajo to zamisel te strukture
ki sem jo pravkar ustvarili.
>> Druga možnost je, ker struktur se tako pogosto uporablja v typedef,
tam je a-- lahko dejansko določite tip med začetkom in koncem.
Torej struktura typedef spet običajno typedef, staro ime, novo ime,
kjer so imena že Vrste, ki ste jih ustvarili.
Vendar lahko dejansko opredelijo strukturo prav v sredini typedef
namesto da opredeli je ločeno in nato
narediti typedef to.
In da bi bila videti kot this-- typedef struct avto,
open kodrasti naramnicami, vse vašem področju definicije, blizu kodrasti brace, avto t.
Tako staro ime je vse te stvari v rdeča, ti si samo za strukturo
in poimenovanje hkrati.
In potem je novo ime je avto podčrtaj t.
In tako če začnemo uporabljati to kodo, prej sem
bi rekel, struct avto mycar podpičjem.
No, jaz ne bi bilo treba storiti več.
Zdaj, ko sem uporabil typedef sem Lahko samo rečem avto podčrtaj t, mycar.
To je veliko krajši način to storiti, in v resnici, je
bo veliko več prikladno, zlasti
kot začnete uporabljati strukture veliko več v kodi.
>> Sem Doug Lloyd.
To je CS50.