﻿1
00:00:04,350 --> 00:00:05,430
‫Hallo en welkom.

2
00:00:05,430 --> 00:00:10,620
‫In deze lezing gaan we leren hoe we toegang kunnen krijgen tot wat zich aan

3
00:00:10,620 --> 00:00:17,700
‫de andere kant van een aanwijzer bevindt, zodat onze verhuizer-component eigenschappen kan krijgen van de acteur waarop hij leeft, zoals het

4
00:00:17,700 --> 00:00:21,750
‫verkrijgen van de naam van de acteur of zijn locatie krijgen.

5
00:00:21,750 --> 00:00:23,940
‫Laten we erin duiken en kijken hoe we dit kunnen doen.

6
00:00:24,660 --> 00:00:29,700
‫Het is dus allemaal prima om een pointer of een adres van een acteur te kunnen krijgen.

7
00:00:29,700 --> 00:00:33,420
‫Maar we moeten wel dingen met de acteur zelf kunnen doen.

8
00:00:34,110 --> 00:00:39,450
‫En het proces om dit te doen is een beetje lastig te begrijpen als we alleen maar naar de acteur kijken.

9
00:00:39,750 --> 00:00:47,190
‫Dus we gaan kijken naar enkele verwijzingen naar floats hier binnen technische componenten.

10
00:00:47,580 --> 00:00:54,150
‫Dus laten we beginnen met het maken van een float, die we mijn float gaan noemen en dit op een waarde van vijf

11
00:00:54,150 --> 00:00:54,690
‫zetten.

12
00:00:55,530 --> 00:01:01,650
‫Dan gaan we een vlotteraanwijzer maken, die ik je vlotter ga noemen, en we

13
00:01:01,650 --> 00:01:06,060
‫gaan dat instellen als het adres van de mijn vlotter.

14
00:01:06,720 --> 00:01:09,840
‫Dus deze wijzen beide naar hetzelfde adres in het geheugen.

15
00:01:09,840 --> 00:01:16,980
‫Het verschil is dat je float een adres is, dus ik kan de waarde niet zomaar uitprinten.

16
00:01:16,980 --> 00:01:28,650
‫Dus als ik een u-log wil doen en ik wil zeggen dat je float-waarde gelijk is aan procent F, dan heb ik je

17
00:01:28,650 --> 00:01:29,910
‫float ingevoerd.

18
00:01:29,910 --> 00:01:35,820
‫Dit gaat niet werken omdat je float een pointer is, geen echte float.

19
00:01:36,690 --> 00:01:40,770
‫Dus wat we moeten doen is in wezen.

20
00:01:41,900 --> 00:01:44,690
‫Haal de waarde op die locatie.

21
00:01:45,380 --> 00:01:51,560
‫Dus de manier waarop we dit kunnen doen, als ik het zou opslaan in een nieuwe float-variabele

22
00:01:51,560 --> 00:01:56,510
‫genaamd float-waarde, dan gebruik ik de D-verwijzingsoperator, die eigenlijk ook een ster is.

23
00:01:56,900 --> 00:02:00,650
‫En we plaatsen dit voor het ding waarnaar we willen verwijzen.

24
00:02:00,650 --> 00:02:04,490
‫Dus we geven het dan een verwijzing naar D-referentie, wat in dit geval je float is.

25
00:02:05,120 --> 00:02:09,920
‫Nu is het een beetje vreemd dat we deze sterren in twee verschillende contexten gebruiken.

26
00:02:09,920 --> 00:02:15,740
‫Dus één, we gebruiken de ster na het type dat ons vertelt dat het een zwevende aanwijzer is.

27
00:02:16,160 --> 00:02:22,190
‫En wanneer u het met een type gebruikt, betekent dit dat het een aanwijzer is wanneer u een ster vóór een

28
00:02:22,190 --> 00:02:23,000
‫aanwijzeruitdrukking gebruikt.

29
00:02:23,390 --> 00:02:27,830
‫Wat je daar doet, is dat je zegt, geef me de waarde op deze locatie.

30
00:02:28,400 --> 00:02:33,020
‫Dus dan krijgt dat de waarde en kopieert het naar float-waarde en nu float-waarde.

31
00:02:33,260 --> 00:02:36,470
‫We kunnen gewoon zo uitprinten.

32
00:02:36,690 --> 00:02:42,020
‫Dus met al die verdraaiingen, laten we doorgaan en het compileren en zien en actie als hit play.

33
00:02:42,260 --> 00:02:47,900
‫En ja hoor, het zegt dat je float-waarde vijf is, wat de waarde is die we oorspronkelijk hadden.

34
00:02:48,890 --> 00:02:53,570
‫Nu slaan we de tussenwaarde meestal niet op in een variabele, omdat dat verspillend is.

35
00:02:53,570 --> 00:02:55,460
‫Het maakt een kopie die we niet nodig hebben.

36
00:02:55,730 --> 00:03:00,770
‫Dus wat we in plaats daarvan kunnen doen, is dat gewoon rechtstreeks in de uitdrukking gebruiken waar we het nodig hebben.

37
00:03:00,770 --> 00:03:05,300
‫Dus je float-waarde zou ster zijn, je float zo.

38
00:03:05,840 --> 00:03:10,910
‫En dat gaat op precies dezelfde manier werken, behalve dat het deze keer een kopie niet tot een onnodige variabele

39
00:03:10,910 --> 00:03:11,420
‫maakt.

40
00:03:11,690 --> 00:03:16,410
‫Stel nu dat we de naam van de eigenaar-acteur hier wilden hebben.

41
00:03:16,430 --> 00:03:23,400
‫Welnu, de manier waarop we dit zouden doen, laten we dit spul verwijderen dat we met de drijvers deden, is dat we zouden verwijzen

42
00:03:23,600 --> 00:03:25,460
‫naar die eigenaar van een aanwijzer.

43
00:03:25,460 --> 00:03:29,570
‫Dus we doen een stereigenaar die ons eigenlijk bij de acteur zelf brengt.

44
00:03:29,900 --> 00:03:36,630
‫Dan kunnen we een paar haakjes om de eigenaar zetten en dan kunnen we een stip doen.

45
00:03:37,010 --> 00:03:40,760
‫Dus we hebben de acteur uit deze uitdrukking.

46
00:03:40,970 --> 00:03:48,650
‫Nu kunnen we een punt gebruiken om iets van binnenuit de acteur binnen te halen, zodat we

47
00:03:48,650 --> 00:03:56,990
‫acteur, naam of label kunnen krijgen, die als een tekenreeks terugkeert, zodat we die tekenreeksnaam hieraan kunnen gelijkstellen en

48
00:03:56,990 --> 00:04:07,700
‫dan kunnen we de verplaatsing afdrukken ona procent s en in plaats van eigenaar hier te gebruiken, gaan we de naam beginnen en dat brengen.

49
00:04:07,700 --> 00:04:10,400
‫We moeten de ster voor een naam plaatsen.

50
00:04:10,400 --> 00:04:13,070
‫Dat is nog een ander gebruik voor die steroperator.

51
00:04:13,310 --> 00:04:15,170
‫We zijn er al drie tegengekomen.

52
00:04:15,170 --> 00:04:16,520
‫Een daarvan is met deze string.

53
00:04:16,730 --> 00:04:17,990
‫Dat is de eerste keer dat we het zien.

54
00:04:17,990 --> 00:04:23,180
‫Dan is het hier met het type en het is ook hier voor DE die verwijst naar heel veel toepassingen

55
00:04:23,180 --> 00:04:24,410
‫voor precies hetzelfde karakter.

56
00:04:24,890 --> 00:04:26,780
‫Maar zo is het met C++.

57
00:04:27,080 --> 00:04:28,880
‫Laten we het gaan proberen en op play drukken.

58
00:04:29,750 --> 00:04:35,120
‫En nu kun je zien dat het de naam afdrukt van de acteurs waaraan de film is gekoppeld.

59
00:04:35,120 --> 00:04:42,200
‫Dus we zijn door die aanwijzer gegaan met de D-verwijzingsoperator en hebben een functie op een

60
00:04:42,530 --> 00:04:44,480
‫ander object kunnen aanroepen.

61
00:04:44,630 --> 00:04:50,720
‫Nu is er eigenlijk een veel compactere syntaxis om dit te doen, omdat het zo gebruikelijk is

62
00:04:50,720 --> 00:04:59,030
‫dat we een functie of eigenschap van een pointer-object willen krijgen in plaats van dit te moeten doen met de haakjes en de

63
00:04:59,030 --> 00:05:02,360
‫state-referentie-operator, we kunnen dit allemaal samenvoegen tot een.

64
00:05:02,360 --> 00:05:09,320
‫We kunnen dit allemaal verwijderen of de punt verplaatsen, en in plaats daarvan gebruiken we deze pijl-operator, zodat de eigenaar de pijl een acteur, naam

65
00:05:09,560 --> 00:05:14,720
‫of label krijgt en dit doet precies hetzelfde, behalve dat het een stuk eenvoudiger is om te schrijven.

66
00:05:15,050 --> 00:05:21,620
‫Dus in het algemeen zal eindigen met de regel dat als we een aanwijzer hebben, we de pijl-operator gebruiken.

67
00:05:21,620 --> 00:05:29,090
‫Als we een struct gebruiken zoals een F-tekenreeks of een F-vector, gebruiken we de puntoperator.

68
00:05:29,510 --> 00:05:36,740
‫Dus ik zou graag willen dat je de locatie van de acteurs afdrukt met behulp van deze nieuwe kennis over hoe we pointers kunnen gebruiken.

69
00:05:37,160 --> 00:05:40,700
‫Dus ik zou graag willen dat je de locatie van de acteur belt.

70
00:05:40,700 --> 00:05:46,820
‫Je gaat de pijloperator gebruiken om door de aanwijzer te kijken en die functie op het object aan te

71
00:05:46,820 --> 00:05:47,270
‫roepen.

72
00:05:47,270 --> 00:05:51,380
‫Aan de andere kant ga je de F-vector opslaan die daaruit voortvloeit.

73
00:05:51,380 --> 00:06:00,770
‫Dan ga je twee compacte tekenreeksen noemen, sla het resultaat op in een nieuwe tekenreeksvariabele en print die naar

74
00:06:00,770 --> 00:06:01,760
‫het logboek.

75
00:06:02,210 --> 00:06:03,980
‫Pauzeer de video en probeer het.

76
00:06:07,430 --> 00:06:07,850
‫Oké.

77
00:06:07,850 --> 00:06:08,570
‫Welkom terug.

78
00:06:08,900 --> 00:06:23,060
‫Dus ik ga een nieuwe F-vector maken, de locatie van de eigenaar, en ik ga de pijl van de eigenaar doen, de locatie van de acteur

79
00:06:23,750 --> 00:06:24,620
‫ophalen.

80
00:06:24,950 --> 00:06:27,620
‫Dan ga ik dit omzetten naar een string.

81
00:06:27,620 --> 00:06:35,540
‫Dus ik ga een X-tekenreeks hebben die de locatie-tekenreeks van de eigenaar wordt genoemd, en dat zal gelijk

82
00:06:35,540 --> 00:06:41,870
‫zijn aan de locatie-punt van de eigenaar om de tekenreeks zo te comprimeren.

83
00:06:42,080 --> 00:06:42,710
‫Oke doke.

84
00:06:42,710 --> 00:06:44,990
‫Dus nu hebben we onze eigen locatiestring.

85
00:06:44,990 --> 00:06:46,820
‫We kunnen dat naar het logboek afdrukken.

86
00:06:46,820 --> 00:06:57,230
‫Ik ga zeggen dat de eigenaar van de verhuizer dit is met locatiepercentages en dat percentage s, we zullen een andere locatiereeks van

87
00:06:57,230 --> 00:07:06,890
‫de stereigenaar hebben, zoals zo en dan op control alt f 11 drukken en we gaan door en drukken op play

88
00:07:06,890 --> 00:07:15,110
‫en ze go we hebben zowel de naam van de acteur als zijn locatie als een string

89
00:07:15,110 --> 00:07:15,680
‫afgedrukt.

90
00:07:15,890 --> 00:07:21,710
‫Dus nu kunnen we de kracht zien van het hebben van aanwijzers en het kunnen aanroepen van functies

91
00:07:21,710 --> 00:07:28,370
‫op punten, omdat het ons in staat stelt te communiceren tussen verschillende instanties van klassen en maakt dat objecten veel nuttiger zijn.

92
00:07:28,460 --> 00:07:30,050
‫Ik zie je in de volgende lezing.

