﻿1
00:00:04,350 --> 00:00:05,430
‫Cześć i witaj.

2
00:00:05,430 --> 00:00:10,620
‫W tym wykładzie dowiemy się, w jaki sposób możemy uzyskać dostęp do tego, co

3
00:00:10,620 --> 00:00:17,700
‫znajduje się po drugiej stronie wskaźnika, aby nasz składnik ruchu mógł uzyskać właściwości od aktora, na którym żyje, na

4
00:00:17,700 --> 00:00:21,750
‫przykład uzyskać imię i nazwisko aktora lub uzyskanie jego lokalizacji.

5
00:00:21,750 --> 00:00:23,940
‫Zanurzmy się i zobaczmy, jak możemy to zrobić.

6
00:00:24,660 --> 00:00:29,700
‫Więc bardzo dobrze jest móc znaleźć wskazówkę lub adres aktora.

7
00:00:29,700 --> 00:00:33,420
‫Ale musimy być w stanie zrobić rzeczy z samym aktorem.

8
00:00:34,110 --> 00:00:39,450
‫A proces robienia tego jest trochę trudny do zrozumienia, jeśli spojrzymy tylko na aktora.

9
00:00:39,750 --> 00:00:47,190
‫Więc przyjrzymy się, jak zrobić kilka wskazówek do pływania właśnie tutaj, w komponentach technicznych.

10
00:00:47,580 --> 00:00:54,150
‫Zacznijmy więc od stworzenia zmiennoprzecinkowej, którą nazwiemy moją zmiennoprzecinkową i ustawimy ją na wartość

11
00:00:54,150 --> 00:00:54,690
‫pięć.

12
00:00:55,530 --> 00:01:01,650
‫Następnie utworzymy wskaźnik zmiennoprzecinkowy, który będę nazywał twoją zmiennoprzecinkową i

13
00:01:01,650 --> 00:01:06,060
‫ustawimy go jako adres mojego zmiennoprzecinkowego.

14
00:01:06,720 --> 00:01:09,840
‫Więc oba wskazują na ten sam adres w pamięci.

15
00:01:09,840 --> 00:01:16,980
‫Różnica polega na tym, że zmiennoprzecinkowa jest adresem, więc nie mogę po prostu wydrukować wartości.

16
00:01:16,980 --> 00:01:28,650
‫Więc jeśli chcę zrobić log u i chciałem powiedzieć, że twoja wartość zmiennoprzecinkowa jest równa procentowi F, to dodaję twoją

17
00:01:28,650 --> 00:01:29,910
‫zmienność zmiennoprzecinkową.

18
00:01:29,910 --> 00:01:35,820
‫To nie zadziała, ponieważ Twoja liczba zmiennoprzecinkowa jest wskaźnikiem, a nie rzeczywistą liczbą zmiennoprzecinkową.

19
00:01:36,690 --> 00:01:40,770
‫Więc to, co musimy zrobić, to zasadniczo.

20
00:01:41,900 --> 00:01:44,690
‫Uzyskaj wartość w tej lokalizacji.

21
00:01:45,380 --> 00:01:51,560
‫Więc sposób, w jaki możemy to zrobić, gdybym miał zapisać to w nowej zmiennej zmiennoprzecinkowej zwanej wartością

22
00:01:51,560 --> 00:01:56,510
‫zmiennoprzecinkową, to używam operatora odniesienia D, który w rzeczywistości jest również gwiazdą.

23
00:01:56,900 --> 00:02:00,650
‫I umieszczamy to przed rzeczą, do której chcemy się odnieść.

24
00:02:00,650 --> 00:02:04,490
‫Więc dajemy mu wtedy wskaźnik do odniesienia D, które w tym przypadku jest twoją liczbą zmiennoprzecinkową.

25
00:02:05,120 --> 00:02:09,920
‫Teraz to trochę dziwne, że używamy tych gwiazd w dwóch różnych kontekstach.

26
00:02:09,920 --> 00:02:15,740
‫Po pierwsze, używamy gwiazdki po typie, który mówi nam, że jest wskaźnikiem zmiennoprzecinkowym.

27
00:02:16,160 --> 00:02:22,190
‫A kiedy używasz go z typem, oznacza to, że jest wskaźnikiem, gdy używasz gwiazdki przed

28
00:02:22,190 --> 00:02:23,000
‫wyrażeniem wskazującym.

29
00:02:23,390 --> 00:02:27,830
‫To, co tam robisz, to mówisz, daj mi wartość w tej lokalizacji.

30
00:02:28,400 --> 00:02:33,020
‫Więc to pobiera wartość i kopiuje ją do wartości zmiennoprzecinkowej, a teraz do wartości zmiennoprzecinkowej.

31
00:02:33,260 --> 00:02:36,470
‫Możemy tak po prostu wydrukować.

32
00:02:36,690 --> 00:02:42,020
‫Więc z tymi wszystkimi wykrzywieniami, chodźmy dalej, skompilujmy i zobaczmy i działaj jak hit.

33
00:02:42,260 --> 00:02:47,900
‫I rzeczywiście, mówi, że twoja wartość zmiennoprzecinkowa to pięć, czyli wartość, którą mieliśmy pierwotnie.

34
00:02:48,890 --> 00:02:53,570
‫Teraz zwykle nie przechowujemy wartości pośredniej w zmiennej, ponieważ jest to marnotrawstwo.

35
00:02:53,570 --> 00:02:55,460
‫Tworzymy kopię, której nie potrzebujemy.

36
00:02:55,730 --> 00:03:00,770
‫Zamiast tego możemy użyć tego bezpośrednio w wyrażeniu tam, gdzie tego potrzebujemy.

37
00:03:00,770 --> 00:03:05,300
‫Więc twoją wartością zmiennoprzecinkową byłaby gwiazda, tak jak twoja zmiennoprzecinkowa.

38
00:03:05,840 --> 00:03:10,910
‫I to będzie działać dokładnie w ten sam sposób, z tym wyjątkiem, że tym razem nie tworzy kopii do niepotrzebnej

39
00:03:10,910 --> 00:03:11,420
‫zmiennej.

40
00:03:11,690 --> 00:03:16,410
‫Załóżmy teraz, że chcielibyśmy podać tutaj nazwisko aktora-właściciela.

41
00:03:16,430 --> 00:03:23,400
‫Cóż, sposób, w jaki byśmy to zrobili, usuńmy to, co robiliśmy z pływakami, to odwoływanie się do

42
00:03:23,600 --> 00:03:25,460
‫tego, który ma wskaźnik.

43
00:03:25,460 --> 00:03:29,570
‫Więc mamy właściciela gwiazdy, który faktycznie prowadzi nas do samego aktora.

44
00:03:29,900 --> 00:03:36,630
‫Następnie możemy umieścić parę wsporników wokół właściciela, a następnie zrobić kropkę.

45
00:03:37,010 --> 00:03:40,760
‫Więc usunęliśmy aktora z tej ekspresji.

46
00:03:40,970 --> 00:03:48,650
‫Teraz możemy użyć kropki, aby uzyskać coś z wnętrza aktora, abyśmy mogli pobrać

47
00:03:48,650 --> 00:03:56,990
‫aktora, nazwisko lub etykietę, która zwróci się jako łańcuch, więc możemy zrobić łańcuch nazwa równy temu,

48
00:03:56,990 --> 00:04:07,700
‫a następnie możemy wydrukować move ona procent s, a następnie zamiast używać tutaj właściciela, zaczniemy od nazwy i przyniesiemy to.

49
00:04:07,700 --> 00:04:10,400
‫Musimy umieścić gwiazdkę przed nazwą.

50
00:04:10,400 --> 00:04:13,070
‫To kolejne zastosowanie tego operatora gwiazdy.

51
00:04:13,310 --> 00:04:15,170
‫Spotkaliśmy już trzy z nich.

52
00:04:15,170 --> 00:04:16,520
‫Jeden jest z tym ciągiem.

53
00:04:16,730 --> 00:04:17,990
‫Widzieliśmy to po raz pierwszy.

54
00:04:17,990 --> 00:04:23,180
‫Następnie jest tutaj z typem i jest również tutaj, aby DE odwoływać się do wielu i wielu zastosowań

55
00:04:23,180 --> 00:04:24,410
‫dokładnie tego samego znaku.

56
00:04:24,890 --> 00:04:26,780
‫Ale tak jest z C++.

57
00:04:27,080 --> 00:04:28,880
‫Chodźmy, wypróbujmy i włączmy odtwarzanie.

58
00:04:29,750 --> 00:04:35,120
‫A teraz widać, że drukuje nazwiska aktorów, do których film jest dołączony.

59
00:04:35,120 --> 00:04:42,200
‫Więc przeszliśmy przez ten wskaźnik z operatorem odniesienia D i byliśmy w stanie wywołać funkcję

60
00:04:42,530 --> 00:04:44,480
‫na innym obiekcie.

61
00:04:44,630 --> 00:04:50,720
‫Teraz istnieje znacznie bardziej zwarta składnia do robienia tego, ponieważ tak często zdarza się,

62
00:04:50,720 --> 00:04:59,030
‫że chcemy uzyskać funkcję lub właściwość z obiektu wskaźnika zamiast robić to z nawiasami i operatorem odwołującym się do

63
00:04:59,030 --> 00:05:02,360
‫stanu, możemy połączyć to wszystko w jeden.

64
00:05:02,360 --> 00:05:09,320
‫Możemy to wszystko usunąć lub przesunąć kropkę, a zamiast tego używamy operatora strzałki, aby strzałka właściciela pobierała aktora, nazwisko lub etykietę

65
00:05:09,560 --> 00:05:14,720
‫i robi dokładnie to samo, z wyjątkiem tego, że jest o wiele łatwiej pisać.

66
00:05:15,050 --> 00:05:21,620
‫Więc ogólnie rzecz biorąc, skończy się to regułą, że jeśli mamy wskaźnik, używamy operatora strzałki.

67
00:05:21,620 --> 00:05:29,090
‫Jeśli używamy struktury, takiej jak łańcuch F lub wektor F, używamy operatora kropki.

68
00:05:29,510 --> 00:05:36,740
‫Więc chciałbym, abyś wydrukował lokalizację aktorów, korzystając z tej nowej wiedzy o tym, jak możemy używać wskaźników.

69
00:05:37,160 --> 00:05:40,700
‫Więc chciałbym, żebyś zadzwonił po lokalizację aktora.

70
00:05:40,700 --> 00:05:47,270
‫Użyjesz operatora strzałki, aby przejrzeć wskaźnik i wywołać tę funkcję na obiekcie.

71
00:05:47,270 --> 00:05:51,380
‫Na drugim końcu będziesz przechowywać wektor F, który z tego wynika.

72
00:05:51,380 --> 00:06:00,770
‫Następnie wywołasz dwa zwarte łańcuchy, przechowasz wynik w nowej zmiennej łańcuchowej i wypiszesz ją w

73
00:06:00,770 --> 00:06:01,760
‫dzienniku.

74
00:06:02,210 --> 00:06:03,980
‫Wstrzymaj wideo i spróbuj.

75
00:06:07,430 --> 00:06:07,850
‫Dobra.

76
00:06:07,850 --> 00:06:08,570
‫Witamy spowrotem.

77
00:06:08,900 --> 00:06:24,620
‫Więc mam zamiar utworzyć nowy wektor F zwany lokalizacją właściciela i zrobię strzałkę właściciela, uzyskam lokalizację aktora.

78
00:06:24,950 --> 00:06:27,620
‫Następnie przekonwertuję to na ciąg.

79
00:06:27,620 --> 00:06:35,540
‫Więc będę miał ciąg znaków X, nazwany ciągiem lokalizacji właściciela, który będzie równy

80
00:06:35,540 --> 00:06:41,870
‫kropce lokalizacji właściciela do ciągu zwartego, w ten sposób.

81
00:06:42,080 --> 00:06:42,710
‫Spoko loko.

82
00:06:42,710 --> 00:06:44,990
‫Więc teraz mamy własną lokalizację.

83
00:06:44,990 --> 00:06:46,820
‫Możemy to wydrukować w dzienniku.

84
00:06:46,820 --> 00:06:57,230
‫Powiem, że właściciel ruchu to ten z procentami lokalizacji s i tymi procentami s będziemy mieć inny ciąg

85
00:06:57,230 --> 00:07:06,890
‫lokalizacji właściciela gwiazdy, taki jak tutaj, a następnie wciskamy Ctrl alt f 11 i idziemy dalej i

86
00:07:06,890 --> 00:07:15,680
‫wciskamy play, a oni go mamy wypisane zarówno imię aktora, jak i jego lokalizację.

87
00:07:15,890 --> 00:07:21,710
‫Teraz widzimy moc posiadania wskaźników i możliwości wywoływania funkcji na punktach, ponieważ pozwala

88
00:07:21,710 --> 00:07:28,370
‫nam komunikować się między różnymi instancjami klas i sprawia, że obiekty są o wiele bardziej przydatne.

89
00:07:28,460 --> 00:07:30,050
‫Do zobaczenia na następnym wykładzie.

