‫Hallo en welkom.
‫In deze lezing gaan we leren over Booleaanse operatoren, zodat we ingewikkelde uitspraken
‫kunnen doen waarvoor meerdere booleans nodig zijn om waar te zijn, zoals een waterspuwer alleen geaccepteerd als
‫het de juiste tag is en ook niet wordt gegrepen.
‫Dus als ik de waterspuwer loslaat, zie je dat de muur pas op dat punt reageert.
‫Laten we erin duiken en kijken hoe dit werkt.
‫Dus nu zouden we idealiter willen dat onze triggercomponent een acceptabele actor negeert of niet aanneemt die momenteel
‫wordt gepakt.
‫Dus om dit te veranderen, ga ik in op onze acceptabele actor-implementatie in triggercomponent
‫CBP.
‫En je kunt zien dat als de staat op dit moment zou zeggen, laten we een acteur nemen, als het de
‫acceptabele tag heeft en dat is het enige wat we doen.
‫Maar wat ik wil doen is dit afhankelijk maken van twee dingen.
‫Hoe combineren we twee Booleaanse waarden?
‫Nou, er zijn een paar opties.
‫We hebben hier enkele operators voor.
‫Een daarvan is de ampersand ampersand-operator, die we lezen als.
‫En dit betekent in feite dat dit een combinatie van twee boolean zal zijn.
‫Dus dat is alleen waar als ze allebei waar zijn.
‫Dus als we waar en waar hadden, dan is dat gelijk aan waar.
‫Terwijl als een van deze twee onwaar is, dus als degene aan de rechterkant
‫onwaar is, dan wordt de hele zaak onwaar, enz. Er is hier nog een andere optie, namelijk om deze
‫dubbele staaf-operator zo te gebruiken en deze wordt gelezen als of.
‫En in feite betekent dit dat als een van deze twee waar is, het resultaat waar zal zijn.
‫En ook, als beide waar zijn, zal het resultaat waar zijn.
‫Maar als beide onwaar zijn, zal het resultaat onwaar zijn.
‫Dit zijn dus enkele van de veelvoorkomende uitdrukkingen die we gebruiken.
‫Een ander ding dat we gebruiken is het uitroepteken, en het uitroepteken keert in feite elke booleaanse waarde om die we
‫hebben en we lezen het als niet.
‫Dus je kunt onwaar hebben, maar omdat ik er een knoop voor zet, wordt deze hele waarde, deze
‫uitdrukking waar.
‫En als ik het met false zou bestellen, nou, omdat er tenminste één waar is, dan zal
‫het resultaat waar zijn.
‫Dus wat we hier willen doen, is dat we in wezen willen zeggen dat als het een actor-tag heeft, dat
‫de acceptabele act-tag is, maar die heeft deze niet.
‫Dus in dit geval en het heeft de actor-tag niet gegrepen, dan is het acceptabel.
‫Zoveel uitdaging voor jou.
‫Hoe zou je die drie operatoren gebruiken die ik zojuist heb uitgelegd?
‫Je hoeft ze niet allemaal te gebruiken, maar welke zou je gebruiken en hoe zou je deze if-statement
‫opschrijven?
‫Oké.
‫Dus ik ga dit in booleaanse variabelen plaatsen om het superduidelijk te maken.
‫Dus ik heb bool die een acceptabele tag heeft, zal gelijk zijn aan de acteur heeft een acceptabele tag.
‫Oké, zo en een puntkomma aan het einde van de regel.
‫Nu zal een andere bool zijn of het wordt gegrepen en we kunnen dit krijgen door te gaan acteur pijl acteur
‫heeft tag en deze zaak zal gewoon zo worden gepakt.
‫Dus we kunnen zeggen dat, of het nu gegrepen is of niet, in de als wat
‫we willen zeggen een acceptabel label is en dus is het ampersand.
‫Ampers en niet dat een uitroepteken zo wordt gegrepen.
‫Dus dat leest redelijk goed als je de ampersand en het uitroepteken leest als en en niet zo
‫als acceptabel een acceptabel label heeft en niet wordt gepakt, dan geven we deze acteur terug.
‫Laten we het compileren en kijken of het werkt.
‫Dus laten we doorgaan en goed spelen, een waterspuwer pakken en naar het triggergebied rennen.
‫En zie je, ik zet de waterspuwer erin, maar er gebeurt niets omdat ik hem nog niet heb losgelaten.
‫Dus wat als ik probeer hun uitrusting neer te knallen?
‫Hier gaan ze.
‫Zodra ik hem loslaat, activeert hij hem, grijpt de waterspuwer van me af en verdwijnt in de
‫grond.
‫Nu zijn er een paar plaatsen in een CP waar we if-statements moeten hebben waar we er maar één zouden
‫kunnen hebben als we het einde zouden gebruiken of en niet de operators.
‫Dus een van de trucs hier is dat wanneer je iets als dit doet waarbij we controleren
‫of iets geen null-pointer is, de andere optie is dat je dit eenvoudigweg kunt verwijderen dat niet gelijk is aan null-pointer.
‫En als je gewoon zegt of en dan een soort aanwijzer als de boolean invoert, dan wordt automatisch gecontroleerd
‫of het geen nulaanwijzer is.
‫Dus hier zegt het dat als de fysica-handgreep hier beschikbaar is, het zegt dat als de grijpercomponent beschikbaar is, we door
‫kunnen gaan en het kunnen gebruiken.
‫Dus laten we je uitdagen om je if-statements te combineren.
‫Dus je gaat ze samenvoegen in technische componenten.
‫Bedenk of je de ampersand, ampersand, de en de OR moet gebruiken of dat je een ontkenning
‫of een knoop of een uitroepteken moet gebruiken en voeg ze dan ook samen in release en test je functionaliteit en
‫kijk of het nog steeds werken.
‫Pauzeer de video en probeer het.
‫Oké.
‫Welkom terug.
‫Dus we gaan hier gebruik van maken, want wat we eigenlijk willen doen en loslaten, is
‫dat we zeggen dat als we een geldige fysica-handgreep hebben en die fysica-handgreep een vastgegrepen onderdeel heeft, dan willen we
‫het lichaam doen van deze if-verklaring.
‫Dus het is vrij eenvoudig om het zo te schrijven.
‫We kunnen zeggen dat als de fysica-handgreep en de fysica-handgreep een onderdeel worden, dan kunnen we het volgende doen.
‫Dus dat stelt ons in staat om deze vroege return if-instructie te verwijderen en de code een beetje korter te maken.
‫Nu, de adelaarsogen onder jullie kunnen zich zorgen maken dat, hé, we verwijzen naar deze fysica-handgreep
‫in de if-verklaring om te evalueren of deze eindverklaring zou moeten werken.
‫Nu is er een kenmerk van de en dat het eerst het ding aan de linkerkant zal evalueren.
‫En als dat ding onwaar is, dan evalueert het niet eens het ding aan de rechterkant.
‫Het hoeft niet.
‫Het weet al dat het resultaat vals zal zijn.
‫Het hoeft verder niets te evalueren.
‫Dus dat betekent dat het veilig is om zoiets als dit te doen, waarbij het resultaat aan de rechterkant van een rekenmachine alleen veilig
‫is om te doen als het resultaat aan de linkerkant waar is.
‫En dit is best handig.
‫En je ziet dat dit vrij veel wordt gebruikt als je aanwijzers gebruikt, je controleert eerst de aanwijzer en dan
‫heb je een ampersand.
‫Ampersand, en dan gebruik je de aanwijzer aan de rechterkant.
‫Maar alsjeblieft, alsjeblieft, laat je alsjeblieft niet verleiden om deze twee in volgorde om te wisselen.
‫Andersom werkt het niet en krijg je crashes.
‫Dus laten we naar onze vinkcomponenten gaan waar we in wezen precies hetzelfde doen.
‫We wilden controleren of we een gepakte componenten hebben.
‫Dus wat we hier kunnen doen, is dat we natuurkunde kunnen hanteren en natuurkunde.
‫Pijl pakte onderdeel.
‫We hebben dat niet gelijk aan null pointer nodig om het netjes te houden en dan kunnen we doorgaan
‫en de if-statement verwijderen met de return en gewoon de regels code laag houden, de leesbaarheid een beetje hoger
‫houden.
‫Goed spul.
‫Dus in deze lezing hebben we gezien hoe we de end or en niet-operators in C++ kunnen gebruiken.
‫Ik zie je in de volgende lezing.