[? DAN ARMADARAS:?] Hi, Jaz sem [? Dan Armadaras?]. Danes bomo treba videti v razhroščevanje. Ne samo, da se bomo govorimo o nekaterih tehnikah, ampak gremo pogledati nekatere funkcije vseboval v CS50 IDE, ki omogočajo vam omogoča enostavno debug program. Samo en primer nekaj, kar bi lahko šlo narobe in da je dejansko nekaj da smo že videli. V tem primeru gre za C program da sprejme celo število od uporabnika, ga deli z dve in zagotavlja izhod nazaj uporabniku. Sedaj od tistega, kar smo videli prej na predavanjih, vemo, da se bo to dejansko povzroči posebne vrste težav delitve ko imamo lihe številke. Natančneje, bomo samo mečejo kaj decimalno vejico. Zdaj vemo, da je to se zgodi, da je tako. In če jo zaženete, lahko rečemo, naše sume, prvi, po zbiranju. In potem, s tekom in vnosom liho število. To ni nič novega. Ampak to je pravzaprav Primer hrošča, ki lahko obstaja znotraj večje programa da postane težje izslediti. Čeprav vemo, kaj je vprašanje je, pravi Bistvo zadeve morda poskušali identificirati še posebej, kjer se napaka pojavi, ugotavljanju, kaj je problem je, in ga nato pritrjevanje. Torej, zagotoviti to kot primer o tem, kaj bi lahko kaj da smo že vedeli, a se lahko pokopan v drugih elementih kode. Torej odpiranje ta drugi vir Koda datoteko kot primer, ta delitev problem je zdaj del večjega programa. Še vedno lahko malo bit izmišljene, in smo Morda bi lahko zlahka identificirati, še posebej, Ker smo pravkar razpravljali o tem. Vendar pa lahko ugotovimo, da je ta problem lahko obstaja v večjem obsegu. Če prevedem to in zdaj teči je, da vnesete liho število, lahko vidimo, da ne bomo dobili natančno izhod, ki smo ga lahko pričakuje. V tem konkretnem primeru, lahko bi rekli, da smo želite prešteti vse številke od enega do neke določeno številko. In vidimo, da smo imajo različne vprašanj tukaj, če smo prikazovanje, enostavno, 0 in 1 ko nudimo vhod 5. Tako že vemo, da tam je problem tukaj. Ampak mi ne vedo natančno kjer to vprašanje dejansko obstaja. Zdaj eden od načinov, da bomo poskušali popraviti to je nekaj, kar smo jih že predstavil. Mi lahko samo uporabljati v večjem obsegu. Na liniji 14, imamo ta funkcija printf, ki nam omogoča, da natisnete stanju različnih informacijami. In to je nekaj, kar vas bi moral finančni vzvod v vašem programu da bi poskušali ugotoviti, kaj je dogaja v različnih vrstic kode. Torej, čeprav to ni Končni rezultat, ki smo dejansko želijo proizvajati iz ta program, še vedno morda nekaj razhroščevanje Izjave Kje smo Lahko poskusite ugotoviti natančno, kaj se dogaja v notranjosti našega kodeksa. Torej, v tem primeru bom printf z debug oznako. V tem primeru gre Samo debug niz da sem gor-dajanje, tako da postane v proizvodnji moje kode zelo jasno kaj je to, da hočem pokazati. In izhodna tukaj številka da smo izračunali. V tem primeru, bom morda želijo natančno vedeti kaj se dogaja pred in Po nekaj posebnega računanja. Torej lahko uporabljam printf pred in po tem vrstico kode. V tem primeru, lahko sem celo da bo malo bolj jasno z besedami razhroščevanje pred in razhroščevanje po tako da ne bom sam zamenjati z več linij, ki so videti enaki. Zdaj, če bomo prevedite to in tek je ponovno vnesite številko kot pet, lahko vidimo, da imamo Sedaj izhod pred in po in ugotovili, da smo naredili jasno delitve ali jasno ob števila da dejansko želimo storiti. Sedaj v tem primeru pa je to ni res jasen izhod. To ni res jasen rezultat, ki želimo iz tega posebnega programa. To pa je spet, A malo izmišljene. Ampak, morda, je ena od stvari, ki kar lahko storimo, če specifikacija dejal da želimo deliti to z 2 in dodajte 1-- tako z drugimi besedami, želimo zaokrožiti up-- nato bomo morda vedeli, da smo lahko storiti, da se posebno stvar, v tem primeru. Zdaj tukaj vemo, da bomo lahko dodali 1 do našega prepolovil število. Naj prevedem to in potrdite, da je to se obnaša tako, kot smo želeli. Vidimo lahko, da je zdaj pred ob imamo številko 5. Po tem, ko smo imeli številko 3, ki po naši specifikaciji, je tisto, kar smo želeli storiti. Ampak, če pogledamo izhodna tukaj, smo lahko videti, da bi imeli drugo bug skupaj, kar je da smo z začetkom našega štetja od 0. Zdaj pa še enkrat, to je nekaj, da smo bili priča v preteklosti in ne moremo popraviti dokaj hitro. Toda v tem primeru smo imeli tudi koristi uporabe izjavo printf neposredno notranjost za zanke natančno vedeti, kje da je bila napaka, ki se pojavljajo. Torej printf izjave so zelo koristne pri lahko ugotovite, kje, Ravno v vaši izvorni kodi, specifična napaka se pojavlja. In to je tudi pomembno, da se zavedaš, da, kot smo pisno kodo, bomo morda imeli predpostavke o stanju programa. Ali lahko imamo predpostavke kaj del programa je dejansko pravilna ali napačna, ko kasneje kot smo gradili na tem programu in da bo del Kompleksna in večji programa da se zavedamo, da nekateri vidik od tega je dejansko buggy. Uporaba printf lahko resnično pomaga zožilo in identifikacijo regije program, ki ne sme je treba natančno obnaša tako, da smo pričakujejo, ki temelji na naših predpostavkah. Ampak tam je druga orodja voljo, kot tudi, ki nam omogočajo, da bi poskušali sliki tam, kjer do napake, ki se pojavljajo In tudi, natančneje, kakšne stvari se dogaja v notranjosti programa. Torej, z uporabo printf je zelo koristno, če želimo opredeliti posebna področja program, ki imajo neko napako. Ampak tudi postane dolgočasno čez nekaj časa. V tem primeru gre za relativno preprost program s samo enim ali dvema spremenljivkama. In to postane zelo enostavno za nas izpisal vrednost teh spremenljivk V okviru širšega programa. Vendar pa lahko imamo drugačen Program, ki ima veliko spremenljivk. In morda ne bo povsem tako preprost za uporabo printf da bi poskušali oceniti, kaj se dogaja za vsakega izmed teh spremenljivk kot program je izvršiteljica. Obstaja program, ki obstaja imenuje program razhroščevalnik. V tem primeru je tisti, ki bomo Uporaba je GNU razhroščevalnik, ali GDB, ki nam omogoča, da pregledujejo notranji Delovanje programa v veliko bolj Podroben način. Mi lahko dejansko izvršiti GDB v ukazni vrstici Tukaj ga preprosto tipkanje GDB in ukaz, da želimo, da debug. V tem primeru se šteje. Zdaj, v tem primeru, lahko vidimo, da je nas pripelje na poziv, ki pravi GDB. In bomo lahko dejansko izvajanje ukazov za GDB dejansko začne usmrtitve Program, nehaj na določenih mestih, ovrednotiti spremenljivk in pregledati spremenljivke, ki obstajajo v državi programa v tistem trenutku, in tako naprej in tako naprej. To zagotavlja veliko moči za nas. Ampak to samo zato, da se zgodi da CS50 IDE tudi omogoča GUI ali uporabnika vmesnik za GDB da nam omogoča, da to storijo brez potrebe v ukazni vrstici vmesnik whatsoever ali sploh še. Tako, da sem lahko dostopate da je s pomočjo gumba debug na samem vrhu CS50 IDE. Zdaj v preteklosti, kar imamo videti je, da bomo uporabili ukaz linije za sestavljanje in nato zaženite program. Gumb za iskanje napak ne oba od teh korakov. Ampak bo tudi bruhati Zavihek razhroščevalnik na skrajni desni ki nam omogoča, da pregledajo različne lastnosti programa saj je izvršiteljica. Če kliknem razhroščevanje, v tem Primer bo bruhati nov zavihek v konzoli Okno na samem dnu. In lahko vidite, da je ta zavihek nekatere informacije na samem vrhu. In smo lahko v veliki meri prezreti to. Toda ena od stvari da želimo obvestilo je, da oddaja ista stvar, ki smo bi dobili, če smo želeli teči, da na Program C v terminalskem oknu. Tu lahko vidimo, da je tekmovanje v teku Jek, in ima različne zastave, in je zbiranje našo count.c datoteko, ki je bil izbran zavihek v času da sem udaril razhroščevanje. Torej, to je zelo koristno, saj zdaj uporablja ta gumb debug, bomo lahko hkrati zbere in nato izvesti program, ki smo dejansko želite zagnati. Eden od zastave, ki je pomembno, v tem primeru, smo dejansko uporabo za najdaljši čas ampak samo naredil nekaj z roko mahal [neslišno], ki je to ena tukaj. V Jek, pravi -ggdb3. V tem primeru, kar smo povedal Jek, naš prevajalnik, je, da želimo, da pripravijo svoj program. Ampak tudi, kaj so imenuje informacije simbol tako da dejansko ima prevajalnik dostop da veliko osnovnega informacij vsebovane v programu. Natančneje, število funkcij, ki jih imam, imena teh funkcij, spremenljivke, vrste da so te spremenljivke, in sorta drugih stvari, ki pomagajo razhroščevalnik opravlja svojo dejavnost. Zdaj pa še nekaj drugega da je pomembno omeniti ko smo razpravljali tek program na ta način. Opazimo, da je dejansko odraščali nov zavihek v našem konzole na dnu. Nimamo več za interakcijo neposredno s terminalskem oknu. Toda ta nov zavihek je pravzaprav okno terminal. Samo je specifična za delovanje Program, ki smo jih ustvarili. Opazimo, da pri dnu, v Kombinacija z nekaj izhodom s Jek prevajalnik in GDB, ki smo ga lahko v veliki meri prezreti, dejansko prikazuje izhod naš program na samem dnu. Zdaj je pomembno, da se zavedaš, da to eno okno dejansko vam bo pokazal Izhod iz programa ampak tudi lahko sprejemajo prispevke za ta program, kot dobro. Tako obvestilo, ki pravi, Prosimo vpišite številko, ki je enaka izhodni da smo imeli je imel v oknu terminala poprej. Ampak to je zdaj prikazano v tem novem zavihku. Jaz lahko vnesete številko. In da bo dejansko funkcija, kot smo pričakovali nam kaže našo razhroščevanje, proizvodnja, izhod, da bi bilo buggy, kot smo videli prej. In na samem dnu, ga dejansko ima nekaj dodatnega izhoda od BDP, samo pravim, da je Ta program je končan. Zdaj, kot ste videli, v tem zlasti teči skozi, ni bilo posebej koristno, saj tudi čeprav smo imeli priti meni razhroščevalnik navzgor, je to še vedno program teče. Na nobenem mestu to storil dejansko premor izvedbe za nas da se lahko pregledajo vse spremenljivke vsebovane znotraj. Še nekaj da moramo storiti, da bi priti GDB priznati, da želimo da prekinete izvajanje programa in ne le omogoča, da nadaljuje praviloma kot bi mi v vseh drugih primerih. Da bi premor izvršitve, na neki določeni progi, moramo ustvariti tisto, kar je imenuje prelomna točka. In je prelomna točka zelo enostavno ustvaril V tem CS50 IDE ob miško in kliknete neposredno na levi nekega določenega števila linije. Ko sem to naredil, rdeča pika Zdi se, kar kaže na da je ta linija sedaj prelomna točka. In naslednjič, ko sem teči GDB ga, bo ustavilo usmrtitev na tej točko lomljenja ko doseže to vrstico kode. Zdaj je to pomembno stvar, da se zavedaš, da to ni nujno velja, da je vsaka vrstica kode je dejansko dostopna. Če bi bil jaz ustvariti funkcijo tu gor, za example-- void F- in samo narediti tiskanja linijo here-- zdravo world-- če nisem poklical to funkcijo, da bo v primeru, da je če sem nastavil točko lomljenja tukaj, funkcija ne bo nikoli poklical. In zato ta zlasti prelomna točka v resnici nikoli ne bo premor izvajanje programa. Torej, recimo, da sem se pravilno ustvarjanje prelom točka na neki vrstico kode da bo dejansko izveden. Sedaj je v tem primeru je to Prva vrstica v glavno funkcijo. Torej bo to zagotovo zgodilo da, takoj ko začnem izvršitve, zelo prva linija bo dosežen. GDB bo premor izvršitve. In potem bom lahko interakcijo z razhroščevalnik. Nastavite lahko več vrstic kot Mejni vrednosti, če bi želeli. Mi lahko ustvarite tudi linijo gor Tukaj v tem segmentu kode da ne bodo nikoli dosegli. In bomo lahko tudi v nadaljevanju določiti enega. Razlog, da smo bi želite to bomo storili iti v malo več detajl v samo trenutek. Torej za zdaj, povej mi samo onemogočiti ti dodatni odmor točk tako da bomo lahko pogledali, kaj se dogaja ko imam en sam odmor točka v mojem programu. Naredil sem nekaj spremembe tega programa. Torej rabim, da ga shranite. Bom kliknite razhroščevanje, tako da sem lahko začnete s sestavljanjem in potem izvedba razhroščevalnik. Videli bomo, da se po nekaj trenutkih, v črta, ki smo izbrali kot počitek točka je označena z rumeno barvo. Prav tako lahko opazimo, da je v zgornji desni v debug plošči da je ikona za pavzo obrnil v malo ikono za predvajanje. To pomeni, da imamo premor izvedba, v tem konkretnem primeru. In hitting gumb Predvajaj bi Dovolite nam, da nadaljuje izvajanje na tej določeni točki. Opazite, da je nekaj drugega Gumbi so na voljo v tem debug plošči, kot dobro. Korak več, ki mi omogoča, da izvršiti to eno vrstico kode in korak več, da te črte na Naslednji on, ki je v tem primeru, bi pomenilo, da je printf Izjava se izvaja. In bo potem pavza izvršba na liniji 13, kot tako. In tam je tudi korak v funkciji, ki je je koristno, če sem ustvaril drugo Funkcije drugje v izvorno kodo. In želim, da stopite v te funkcije namesto izvršiti to funkcijo kot celote. Vendar bomo videti bolj v koraku v funkcijo v samo trenutek. Zdaj opazili nekaj drugih stvari, ki jih dejansko obstajajo v tem debug plošči. Imamo to plošča imenuje klic stack, ki nam pokaže, kje smo točno. V tem primeru smo v notranjosti glavne funkcije. Naš scenarij se imenuje count.c. In se zgodi, da se na vrstica 13, stolpec ena, ki Ravno to pa je izpostavil regija izvorne kode nakazuje, kot dobro. Zdaj opazili, da tudi to kaže pod lokalnim spremenljivim prečnim vse spremenljivke, ki obstajajo v tej funkciji. Pomembno je omeniti, da so vse spremenljivke se bo pojavil v tej lokalni spremenljivki poglavje v funkciji še preden so opredeljena. Mi lahko vidite tukaj, da imamo spremenljivko imenuje num, ima privzeto vrednost 0, in je tipa int. Zdaj pa, preden smo dejansko inicializacijo vseh teh spremenljivk, nismo nujno zagotovljeno, da vidim vrednost 0. In odvisno od drugih usmrtitvah ki ste jih opravili in stanje vašega pomnilnika, ko ste dejansko zagnati ta program, boste morda ugotovili, da vas ne vidim vrednosti 0 in namesto tega nekatere druge nore številke. Ampak ne skrbi. To se ne dogaja, da so pomembni, dokler ste dejansko inicializirati vrednost. Zdaj, v tem primeru, lahko vidimo, da Imam izvedli nekaj izhodov. In jaz, prav zdaj, zaustavljenih izvršitve. Toda v tem primeru, kar Res želite storiti je zdaj korak v tej vrstici kode, tako da sem lahko dejansko poizvedbo uporabnika za to notr, da želimo uporabiti v našem programu. Sedaj je v tem primeru, ko Zadel sem stopiti čez, obvestila da Pause oziroma Nadaljuj Gumb se je spremenilo na ta gumb Pause ker ta oznaka se dejansko izvršuje. Kaj se dogaja Trenutno je, da je čaka na nas, da vnesete nekaj informacij Kot lahko vidimo, ki jih naše izhodne besedilom na dnu. Torej zdaj, to je dejansko ni zaustavljena, čeprav to, nekako se zdi, da je, ker se nič ne dogaja. Vendar je prav tako se zgodi, da se v moj posebni primer na liniji 13, Čakam vnos uporabnika. In tako GDB ne more pregledati program, saj je tekmovanje v teku. Zdaj, ko naslednjič vnesem nekaj input-- zato bom vnesite to številko 5, kot smo videli v past-- sprašuje nazaj, in smo obvestilo, da mora takoj, GDB premore in ponovno opozarja na naslednjo vrstico. Ampak obvestilo, da je zdaj, kot Rezultat naše vnosom vrednosti, Posodobili smo to vrednost v notranjosti naših lokalnih spremenljivk, ki je zelo uporaben za natančno vedeti kaj ta številka je bila v pomnilniku. Zdaj lahko omogoči ta program, da nadaljuje igranje do konca njegovo izvedbo s pritiskom Nadaljuj. Vidimo lahko, da je zelo hitro počne program konča izvršitve z isto izhodno da smo je imel prej, razhroščevalnik zapre, in sedaj ta program se je popolnoma ustavil. I kažejo, da le za Nameni videli, kaj se zgodi, ko smo dejansko hit Nadaljuj. Vendar smo dejansko se dogaja, da želijo iti nazaj v ta program tako da bomo lahko poskusite debug natančno, kaj se dogaja. Zdaj, ko sem z razhroščevalnik, smem te izjave debug printf ne potrebujete. Torej sem jih lahko odstranite tako bom naredil zdaj samo, da se vrnete na našo enostavnejši kodo da smo imeli pred nekaj trenutki. Zdaj, ko sem shranite program in ga izvršiti, to bo, še enkrat, pojdite na to začetnica prekinil točko, ki sem ga imel na liniji 11. In bom lahko vpogleda moje spremenljivke, kot si želim. Samo tako se zgodi, da to del ni zelo zanimivo, In vem, da bom natisniti to izjavo. Prosimo vpišite številko. In potem, vem, da bom vprašati uporabnika za to število. Torej, morda sem dejansko želijo, da se premaknete my prekinil točko malo niže. Lahko odstranite premorov točke s klikom, še enkrat, neposredno na levi strani te številke linije. Da rdeča pika bo izginila, kar pomeni, da je ta prelomna točka sedaj šla. Sedaj je v tem primeru, izvedba je bila začasno ustavljena. In tako da je dejansko ne bo nadaljeval v tem konkretnem primeru. Ampak jaz lahko nastavite odmor točka a malo kasneje. In ko sem zdaj spet moj koda, se bo nadaljevala in povej točka te prekinitve točke. Spet sem udaril Nadaljuj. Ne zdi kaj se dogaja. Ampak to je, ker je moj koda čaka na vhodu. Bom vpišite številko 5, zadeti nastopiti, in Zdaj bo naslednja prelomna točka hit. Sedaj je v tem primeru pa je to je vrstica kode da je, preden smo vedeli, se je zgodilo, da je buggy. Torej, kaj je oceniti, kaj se zgodi v tem določenem trenutku. Ko je poudarjena linija, to linija še ni bila izvedena. Torej, v tem primeru lahko vidimo, da imam številko, ki Imam celo imenovano num, ki ima vrednost 5. In bom se opravlja nekaj matematike na to številko. Če stopim več, da bomo lahko opazili, da je bila vrednost za num se je spremenila v skladu z aritmetična da smo dejansko storili. In sedaj, ko smo Notranjost tega za zanke ali je sedaj, da se za zanko sam je poudaril, vidimo, da imamo novo spremenljivka Poklicala sem, da se bo treba uporabiti, da se za zanko. Zdaj pa ne pozabite pred tem I je omenil, da se včasih ste videli nekakšen nor številke kot privzeto pred to številko ali da spremenljivka dejansko inicializiran. Mi lahko natančno videli, da tukaj v tej spremenljivki Poklical sem, ki nima ni bil inicializiran ob poudari. Vendar lahko vidimo, da ima nekaj več da mi ne bi bilo pravzaprav pričakovati. To je ok. Ne skrbite saj imamo dejansko ne inicializiran to število do I korak čez to linijo in vrednostjo i je inicializiran na vrednost 1. Tako da vidim, da je to dejansko v primeru, kaj je korak več. Sedaj lahko vidite, da je ta Vrstica je bila izvedena. In zdaj poudarjanje to printf črta. In zdaj lahko vidite, kako naše vrednote za i in 3 so se sčasoma spremenili. To je zelo koristno, da ne, dejansko je, da stopite preko linije večkrat. In jih lahko najdete, kaj dejansko se dogaja v notranjosti vašega za zanke in kaj se zgodi na spremenljivke v notranjosti, da je za zanke kot to izvedbo programa pojavi en korak naenkrat. Sedaj na tej točki, sem stopil čez ravno dovolj da sem zdaj jaz na koncu mojega programa. Če stopim več, da se bo to dejansko preneha izvajanje kot smo videli v preteklosti. Naj ponovno zaženete to, še enkrat, tako da da sem lahko kažejo nekaj drugega ven, kot dobro. V tem primeru je zdaj me sprašuješ, še enkrat, za številne, ki Bom spet začne. Ampak tokrat, bom za vstop v večje število, tako da je za zanko bo Ponovil večkrat. V tem primeru, jaz grem vnesti vrednost 11. Zdaj pa še enkrat, ker bi jaz nastavljen prelom točka na liniji 15, to se dogaja, da označite to vrstico. Vidimo, da je naša Številka 11 je pravilno zastopani v naših lokalnih spremenljivk. Stepping preko tega, da smo zdaj lahko opazujte, kaj se dogaja z našo vrednosti i kot smo nadaljevali znotraj tega za zanke. To gets poveča vsakič, ko smo dosežejo vrh, ki za zanke. Zdaj pa ena od stvari, ki bi lahko koristno narediti med izvajanjem tega programa je za mene, da dejansko spremenite spremenljivk midstream videti kaj se zgodi z mojim programom. V tem primeru sem lahko dejansko dvokliknite vrednost. Obvestilo, da postane polje za besedilo. Zdaj lahko vnesete drugačno vrednost skupaj da vidim, kako moj program obnaša ko sem spremenil to spremenljivko. Sedaj je v tem primeru, je spremenljivka i zdaj vsebuje vrednost 10. Toda program še zamrznili izvršbe. Ko stopim več, vidim, da je vrednost i, ki sem vstopil kot 10, ni večja od vrednosti num, ki takoj povzroči, da se za zanko za ustavitev izvršitve. Zdaj to ni edini Razlog, zakaj bi jih želeli spremeniti spremenljivko prosto. Morda boste dejansko želijo poskusiti, da ga spremeni tako, da lahko še naprej Izvršitev zanke ali pa tako, da lahko spremenite nekatere vrednosti pred njo doseže neko poseben sklop aritmetike da ste o tem opravljati. Torej sedaj, da smo dejansko spremeniti Vrednost i, kot je program bil izvršitve, je povzročila, da je za zanke, da zaprete prezgodaj, saj kar naenkrat, i zgodilo, da se večja od vrednosti NUM, kar pomeni, da je ta za zanko ni več potrebno, da se izvrši. Nadalje se je zgodilo, da je Primer, ki smo spremenili vrednost I ko je bila poudarjena linija 17, kar je trenutek da je za izvedbo zanke je dejansko ocenili. Če bi spremenili vrednost i na drugo linijo, recimo 19, smo bi videli drugačen vedenje, ker linija 19 bi se izvrši pred zanko pogoj je bil prevrednotujejo. Sedaj na tej točki, da sem, še enkrat, Na koncu tega programa. In ne morem dopustiti, da nadaljuje dovolite moj program za naravno zaprete. Toda obstaja nekaj stvari, ki so pomembni za odvoz od tem razprave. Morate oceniti lastne predpostavke o tem, kako koda je treba obnašati. Vsak čas menite, da so nekateri kos o koda veste, se zgodi na delo, da je lahko rdeča zastava iti nazaj in oceniti, in se prepričajte, da vaši predpostavki kako da koda deluje je dejansko res, kako je izraženo v izvorni kodi. Ampak še bolj na mestu je, ko smo z razhroščevalnik, lahko postavite prelomnih točk na različnih vrstic kode, ki bo povzročila razhroščevalnik do premor usmrtitev na vsaki od teh vrstic tako da lahko oceni spomin ali celo spremeniti v mestu. In še enkrat, ne pozabite, da lahko ustvariti več prelomnih točk, tako da boste Lahko tudi nadaljevanje izvedbe, preskočite na velikih delov kode, in ga bomo samodejno pavzo na naslednji točko lomljenja. Tam je dejansko bolj napredni lastnosti razhroščevalnik, kot tudi. Bom, ampak bomo morali sklicevati nekaterih poznejših videoposnetkov da bi res draži narazen, kako za uporabo te posebne funkcije. Za zdaj, hvala zelo veliko za gledanje. In srečno razhroščevanje.