‫Hallo en welkom.
‫En hierna gaan we kijken hoe we waarden uit onze functies kunnen retourneren met
‫behulp van verschillende retourtypen en een retourstatement.
‫Laten we erin duiken en kijken hoe dit werkt.
‫Dus tijdens de laatste lezing zeiden we dat als een functie geen waarde retourneert, het retourtype ongeldig moet zijn, wat
‫we hier hebben gedaan.
‫Maar wat als we een functie willen nemen zoals krijgen in feite controleren of we ons moeten omdraaien?
‫Weet je, deze functie hier in de if-instructie, als we zouden kunnen zeggen dat we in plaats daarvan zouden moeten omdraaien,
‫zou het aan het eind van de dag een veel schonere functie zijn.
‫Dus hoe doen we dat?
‫Hoe bereiken we een functie die een Booleaanse uitdrukking kan retourneren?
‫Welnu, de manier waarop we het doen, is simpelweg door een type te gebruiken in plaats van de leegte.
‫Dus als we ooit een booleaanse uitdrukking zouden retourneren omdat we bool zouden typen zoals we zouden doen voor een variabele.
‫Maar wat de functie van de variabele onderscheidt, is het feit dat we er haakjes achter zetten, waardoor het
‫een functie wordt in plaats van een variabele.
‫En wat we zouden kunnen doen, is dat het platform moet terugkeren en dan zetten we onze haakjes.
‫En in dit geval heb ik niets dat ik als argument aan deze functie wil doorgeven, dus ik kan de parameterlijst
‫gewoon leeg laten, een puntkomma aan het einde van de regel plaatsen en dan deze hele regel kopiëren
‫en overlopen naar het bewegende platform.
‫CP En helemaal aan het einde van het bestand, je zou het overal kunnen plaatsen waar je maar wilt, echt tussen een van
‫de functies.
‫Zorg ervoor dat het niet in een functie staat.
‫Ik ga het hier plakken.
‫Ik ga het inspringen en ik ga de klasse toevoegen en.
‫De scope resolutie werkt.
‫Dus een dubbele puntkomma met bewegend platform moet het platform terugkeren, verwijder dan de puntkomma en voeg in plaats daarvan enkele accolades
‫toe.
‫En wat we hier willen doen, is dat als we daadwerkelijk een resultaat willen retourneren, we een speciaal
‫trefwoord return moeten gebruiken, gevolgd door een expressie van het juiste type.
‫Dus in dit geval moet het een booleaanse uitdrukking zijn.
‫Dus ik kan true retourneren en dan een puntkomma aan het einde zetten, of ik kan false retourneren en dan een puntkomma aan het einde
‫zetten.
‫Maar zo eenvoudig hoeft het niet te zijn.
‫Het kan eigenlijk elke uitdrukking zijn.
‫Het kan een andere aanroep van een functie zijn, het kan een variabele zijn, het kan een gebruik zijn van
‫enkele operators zoals we hier in onze verklaring hebben.
‫Laten we dus in feite doorgaan en proberen dat te doen.
‫Ik ga deze uitdrukking aannemen.
‫De verplaatste afstand is groter dan de verplaatsingsafstand.
‫Ik ga het uitknippen en ik ga het plaatsen als de retouruitdrukking voor deze functie voor het terugkeren van het
‫platform.
‫Inez gaat hier klagen omdat afstandsverplaatsing geen lokale variabele is binnen onze functie voor het
‫retourneren van platforms.
‫Dus we gaan nog wat dingen verplaatsen.
‫Maar voordat we dat doen, wil ik niet vergeten om dit aan te roepen als het platform terugkeert in de if-instructie,
‫dus als het platform terugkeert, en dan de haakjes te plaatsen zodat de functie daadwerkelijk in onze instructie wordt
‫aangeroepen.
‫Dus nu begint het me wat beter te lezen.
‫Als het platform zou terugkeren, doen we al het volgende.
‫Dus wat we nu moeten doen, is de variabele afstand verplaatsen die we in het MOVE-platform hebben.
‫We hebben het niet echt nodig binnen het MOVE-platform.
‫Ik ga het uitknippen en meenemen en op de lijn zetten voor onze retourverklaring.
‫Gewoonlijk is de return-instructie het laatste in een functie, want als je eenmaal uit een functie bent teruggekeerd, doe
‫je eigenlijk niets anders.
‫Als ik zoiets als een logbericht zou plaatsen, dan plaats ik je log na mijn retourverklaring met een soort
‫bericht.
‫Wat er meestal gaat gebeuren, is dat je een waarschuwing krijgt van je compiler die zegt dat deze regel nooit zal worden bereikt
‫en dat het waarschijnlijk niet je bedoeling was om dat te doen.
‫Dus de retourverklaring is meestal het laatste.
‫Dus nadat we over de lijn zijn gegaan die de afstand definieert die is verplaatst in onze functie voor het terugkeren van het platform,
‫kun je zien dat het nu zegt, hey, ik heb geen huidige locatie en de huidige locatie die we
‫heel gemakkelijk kunnen pakken, we hebben stel de huidige locatie in net voordat we bellen als het platform
‫terugkeert.
‫Dus daadwerkelijk een actieve locatie krijgen is precies wat we willen.
‫Dus ik ga dat gewoon in plaats van een variabele plaatsen, ik ga gewoon een oproep plaatsen om op een locatie in
‫de plaats te komen en als het platform terugkeert.
‫Wat we nu hebben, is dat de verplaatste afstand gelijk is aan het effect, een afstand tussen de startlocatie en
‫de huidige locatie van de acteur.
‫Dus als dat groter is dan de geconfigureerde verplaatsingsafstand, ja, dan zou het platform moeten terugkeren.
‫Dat is wat deze functie zegt en het stelt ons in staat om het van binnenuit op een hoger abstractieniveau
‫te gebruiken en de platformfunctie te verplaatsen.
‫Nu zul je merken dat het nu klaagt dat we de afstand niet kunnen verplaatsen om overschrijding te printen.
‫Nou, dat is niet erg.
‫Ik wil dat eigenlijk niet meer afdrukken.
‫Het verpest sowieso mijn functie.
‫Dus ik ga de overshoot variabele lijn verwijderen.
‫Ik ga de get-naamregel verwijderen, ik ga het logbericht verwijderen omdat het
‫er slechts tijdelijk was, vandaar de log-temp-naam.
‫Dus nu ga ik verhuizen.
‫Platformfunctie begint er een stuk schoner uit te zien.
‫We kunnen zien dat we de locatie hier wat bijwerken.
‫We kunnen zien of het platform moet terugkeren en zo ja.
‫Dan werken we de locatie bij en draaien we hem om.
‫Nu, een ding waarvan ik denk dat het er hier een beetje beter uit zou zien, is als we een alt-instructie hadden
‫in plaats van deze reeks code bovenaan.
‫Dus als het platform zou terugkeren, zullen we dit uitvoeren, anders zullen we de normale code uitvoeren om het
‫vooruit te helpen.
‫Dus onthoud dat we terugdenken aan het moment waarop we het hadden over de alt-verklaring, het komt gewoon na en als-verklaring
‫en we doen het gewoon zo.
‫Na de accolades hebben we een nieuwe regel en typen we anders, dan nog een nieuwe regel en openen enkele
‫nieuwe haakjes en we kunnen deze code die hier bovenaan ons vinkje staat gewoon verplaatsen.
‫We kunnen het nemen en naar het alt-statement verplaatsen.
‫Dus nu lijkt het vrij rechttoe rechtaan.
‫Moet het platform terugkeren en dan de code doen die het platform anders doet?
‫We bewegen het platform vooruit met onze platformsnelheid.
‫Nu wil ik je uitdagen om je eigen functie te maken met een retourwaarde.
‫Ik zou graag willen dat je een functie voor het verplaatsen van afstand toevoegt.
‫Dus we hebben dit momenteel berekend in een variabele die verplaatste afstand wordt genoemd.
‫Ik zou willen dat je dat vervangt door een aanroep van een functie.
‫Dus het zou een vlotter moeten retourneren, want dat is hoe het type afstand wordt verplaatst, we zouden het moeten inschakelen als het
‫platform terugkeert.
‫Dus in plaats van de effecten hiervan te gebruiken, zouden we onze eigen implementatie moeten gebruiken.
‫Dus welke code moeten we?
‫Moet er in staan met welke coach we erin gaan?
‫De hint is dat we deze code al hebben getypt, dus je kopieert en plakt hem gewoon in de
‫nieuwe functie.
‫Maar denk even na over wat de return-expressie zou moeten zijn, zodat we de
‫waarde voor de verplaatste afstand retourneren.
‫Pauzeer de video en probeer het.
‫Oké.
‫Welkom terug.
‫Dus laten we naar Ahead of file gaan.
‫We zullen hier een nieuwe functie toevoegen voor de vluchtretourwaarde genaamd afstand verplaatsen.
‫En dan hebben we geen argumenten tussen haakjes en dan gaan we naar ons bewegende
‫platform.
‫CP We gaan een drijver toevoegen, een bewegend platform, dubbele punt, dubbele punt afstand verplaatst of afstand verplaatst, ik zou
‫haakjes moeten zeggen.
‫En dan plaatsen we een nieuwe set beugels op de volgende regel.
‫En wat we willen teruggeven is letterlijk gewoon de uitdrukking die we gebruiken om onze afstandsbeweging float
‫te creëren, zodat ik dat kan uitknippen en hier plakken.
‫Dus het is van invloed op dubbele punt, dubbele punt, test, startlocatie, krijg actieve locatie en plaats een puntkomma aan het einde van
‫die regel.
‫En dat betekent dat het in moet platform terugkeren.
‫In plaats van deze afstandsverplaatsingsvariabele te hebben, ga ik die regel verwijderen die half voltooid is.
‫We gaan terug om de afstand te verplaatsen.
‫Haakjes is groter dan de verplaatsingsafstand.
‫Dus we hebben een soort van genomen wat er in een variabele ging en in plaats daarvan naar zijn eigen functie getrokken.
‫En dit betekent dat wanneer we willen verwijzen naar de verplaatste afstand, als we dat
‫logbericht in het MOVE-platform wilden bewaren, we eenvoudig de functie kunnen aanroepen, afstand verplaatsen van een van de
‫functies in onze klasse.
‫Goed spul.
‫Dus in deze lezing hebben we geleerd over return-statements en return-waarden en we hebben ze gebruikt om twee nieuwe
‫functies in een klasse te creëren.
‫Ik zie je in de volgende lezing.