﻿1
00:00:04,390 --> 00:00:05,290
‫Cześć i witaj.

2
00:00:05,290 --> 00:00:11,140
‫W tym wykładzie będziemy uczyć się o operatorach logicznych, aby móc tworzyć skomplikowane

3
00:00:11,140 --> 00:00:18,640
‫zdania, które wymagają wielu wartości logicznych, aby były prawdziwe, na przykład akceptowanie gargulca tylko wtedy, gdy jest

4
00:00:18,640 --> 00:00:23,440
‫to poprawny znacznik, a także nie jest on przechwycony.

5
00:00:23,440 --> 00:00:28,780
‫Więc kiedy puszczam gargulca, widać, że ściana reaguje tylko w tym momencie.

6
00:00:29,050 --> 00:00:30,790
‫Zanurzmy się i zobaczmy, jak to działa.

7
00:00:32,050 --> 00:00:40,600
‫Więc teraz idealnie byłoby, gdyby nasz komponent wyzwalający ignorował lub nie przyjmował akceptowalnego aktora, który jest

8
00:00:40,600 --> 00:00:41,920
‫obecnie przechwytywany.

9
00:00:42,070 --> 00:00:48,790
‫Aby to zmienić, przejdę do naszej akceptowalnej implementacji aktora w komponencie wyzwalacza

10
00:00:48,790 --> 00:00:49,440
‫CBP.

11
00:00:50,110 --> 00:00:54,820
‫I widzicie, że gdyby państwo mówiło obecnie, weźmy aktora, jeśli ma akceptowalny tag i

12
00:00:54,820 --> 00:00:57,340
‫to jest jedyna rzecz, którą robimy.

13
00:00:57,790 --> 00:01:01,740
‫Ale to, co chcę zrobić, to uzależnić to od dwóch rzeczy.

14
00:01:01,750 --> 00:01:04,900
‫Jak połączyć dwie wartości logiczne?

15
00:01:04,910 --> 00:01:06,250
‫Cóż, jest kilka opcji.

16
00:01:06,250 --> 00:01:08,450
‫Mamy do tego kilku operatorów.

17
00:01:08,470 --> 00:01:12,850
‫Jednym z nich jest operator ampersand ampersand, który czytamy jako.

18
00:01:12,850 --> 00:01:17,650
‫A to w zasadzie oznacza, że będzie to łączenie dwóch wartości logicznych.

19
00:01:17,650 --> 00:01:19,780
‫Tak więc jest to prawdą tylko wtedy, gdy oba są prawdziwe.

20
00:01:20,410 --> 00:01:27,400
‫Więc gdybyśmy mieli prawdę i prawdę, to byłoby to równe prawdzie.

21
00:01:28,000 --> 00:01:32,890
‫Natomiast jeśli któryś z nich jest fałszywy, więc jeśli ten po prawej

22
00:01:32,890 --> 00:01:40,090
‫jest fałszywy, to cała sprawa będzie fałszywa itd. Jest jeszcze inna opcja, która polega na użyciu tego

23
00:01:40,090 --> 00:01:43,930
‫podwójnego operatora w taki sposób, a ten jest odczytywany jako lub.

24
00:01:44,200 --> 00:01:49,570
‫I zasadniczo oznacza to, że jeśli jedno z tych dwóch jest prawdziwe, to wynik będzie prawdziwy.

25
00:01:49,840 --> 00:01:52,480
‫A także, jeśli oba są prawdziwe, wynik będzie prawdziwy.

26
00:01:52,480 --> 00:01:57,260
‫Ale jeśli oba z nich są fałszywe, wynik będzie fałszywy.

27
00:01:57,490 --> 00:02:00,480
‫Oto niektóre z typowych wyrażeń, których używamy.

28
00:02:00,490 --> 00:02:08,800
‫Inną rzeczą, której używamy, jest wykrzyknik, a wykrzyknik zasadniczo odwraca dowolną wartość logiczną, którą mamy,

29
00:02:08,800 --> 00:02:11,680
‫i czytamy ją jako nie.

30
00:02:12,130 --> 00:02:18,790
‫Więc możesz mieć fałsz, ale ponieważ zawiązałem przed nim węzeł, cała ta wartość, to wyrażenie staje

31
00:02:18,790 --> 00:02:19,780
‫się prawdziwe.

32
00:02:20,050 --> 00:02:25,810
‫A gdybym miał zamówić z fałszem, to cóż, bo przynajmniej jeden z nich jest prawdziwy,

33
00:02:25,810 --> 00:02:27,380
‫to wynik będzie prawdziwy.

34
00:02:28,390 --> 00:02:36,220
‫Więc to, co chcemy tutaj zrobić, to zasadniczo powiedzieć, że jeśli ma tag aktora, jest to

35
00:02:36,220 --> 00:02:39,910
‫akceptowalny tag act, ale go nie ma.

36
00:02:40,270 --> 00:02:46,180
‫Więc w tym przypadku i nie ma przechwyconego tagu aktora, jest to akceptowalne.

37
00:02:46,300 --> 00:02:47,920
‫Tyle wyzwań dla Ciebie.

38
00:02:47,920 --> 00:02:52,300
‫Jak wykorzystałbyś te trzy operatory, które właśnie wyjaśniłem?

39
00:02:52,300 --> 00:02:57,210
‫Nie musisz używać ich wszystkich, ale których byś użył i jak napisałbyś to stwierdzenie

40
00:02:57,220 --> 00:02:57,760
‫if?

41
00:03:00,050 --> 00:03:00,350
‫Dobra.

42
00:03:00,350 --> 00:03:03,170
‫Więc zamierzam umieścić to w zmiennych logicznych, aby było to bardzo jasne.

43
00:03:03,500 --> 00:03:14,360
‫Więc mam bool, który ma akceptowalny tag, będzie równy aktorowi, który ma akceptowalny tag.

44
00:03:14,540 --> 00:03:17,690
‫W porządku, tak i średnikiem koniec wiersza.

45
00:03:17,960 --> 00:03:27,530
‫Teraz kolejna bzdura będzie dotyczyła tego, czy zostanie złapany i możemy to uzyskać, przechodząc do strzałki aktora, aktor ma tag,

46
00:03:28,070 --> 00:03:32,930
‫a ta sprawa zostanie po prostu złapana w ten sposób.

47
00:03:32,990 --> 00:03:39,440
‫Możemy więc powiedzieć, że niezależnie od tego, czy jest to przechwycone, czy nie, to w przypadku, gdy to,

48
00:03:39,440 --> 00:03:44,330
‫co chcemy powiedzieć, ma akceptowalny znacznik, a więc jest to znak ampersand.

49
00:03:44,330 --> 00:03:51,680
‫Ampersand nie to jest wykrzyknik jest złapany w ten sposób.

50
00:03:51,980 --> 00:03:59,030
‫Czyta się to całkiem dobrze, jeśli odczytasz znak & i wykrzyknik jako, a nie tak,

51
00:03:59,030 --> 00:04:05,600
‫jeśli akceptowalne ma akceptowalny znacznik i nie zostanie złapany, wtedy zwracamy tego aktora.

52
00:04:05,810 --> 00:04:08,000
‫Skompilujmy to i zobaczmy, czy działa.

53
00:04:08,270 --> 00:04:14,870
‫Więc chodźmy dalej i uderzajmy dobrze, chwyćmy gargulca i biegnijmy do obszaru spustu.

54
00:04:15,140 --> 00:04:20,450
‫I widzisz, wkładam gargulca, ale nic się nie dzieje, bo jeszcze go nie wypuściłem.

55
00:04:20,630 --> 00:04:22,880
‫Co z tego, jeśli spróbuję zrzucić ich sprzęt?

56
00:04:22,880 --> 00:04:23,780
‫Tutaj idą.

57
00:04:23,830 --> 00:04:29,630
‫Gdy tylko go puszczę, aktywuje go, odrywa ode mnie gargulca i znika pod

58
00:04:29,630 --> 00:04:30,110
‫ziemią.

59
00:04:30,290 --> 00:04:38,240
‫Teraz jest kilka miejsc w przechwyceniu CP, w których musimy użyć instrukcji if, w których moglibyśmy mieć

60
00:04:38,240 --> 00:04:43,460
‫tylko jeden, gdybyśmy mieli użyć operatorów end lub, a nie.

61
00:04:43,730 --> 00:04:48,920
‫Więc jedna ze sztuczek polega na tym, że kiedy robisz coś takiego, gdzie

62
00:04:48,920 --> 00:04:55,270
‫sprawdzamy, czy coś nie jest wskaźnikiem zerowym, inną opcją jest po prostu usunięcie tego wskaźnika nie równego zerowi.

63
00:04:55,280 --> 00:05:04,160
‫A jeśli po prostu powiesz if, a następnie wstawisz jakiś wskaźnik jako wartość logiczną, to automatycznie sprawdzi, czy nie

64
00:05:04,160 --> 00:05:06,590
‫jest to wskaźnik zerowy.

65
00:05:06,590 --> 00:05:13,760
‫Więc tutaj jest napisane, że jeśli uchwyt fizyki jest dostępny tutaj, to mówi, że jeśli komponent chwytania jest dostępny,

66
00:05:14,030 --> 00:05:16,310
‫to możemy śmiało go użyć.

67
00:05:16,490 --> 00:05:19,340
‫Rzućmy zatem wyzwanie, aby połączyć swoje stwierdzenia if.

68
00:05:19,340 --> 00:05:22,280
‫Więc połączycie je razem w komponenty technologiczne.

69
00:05:22,280 --> 00:05:28,130
‫Zastanów się, czy musisz użyć znaku ampersand, ampersand, i i OR, czy też

70
00:05:28,130 --> 00:05:35,150
‫musisz użyć negacji, węzła lub wykrzyknika, a następnie połączyć je razem w wydaniu i przetestować swoją funkcjonalność

71
00:05:35,150 --> 00:05:37,490
‫i sprawdzić, czy nadal Pracuje.

72
00:05:37,820 --> 00:05:39,530
‫Wstrzymaj wideo i spróbuj.

73
00:05:42,810 --> 00:05:43,320
‫Dobra.

74
00:05:43,320 --> 00:05:44,020
‫Witamy spowrotem.

75
00:05:44,040 --> 00:05:49,950
‫Więc zamierzamy to wykorzystać, ponieważ zasadniczo to, co chcemy robić i wypuszczać, to

76
00:05:49,950 --> 00:05:57,510
‫mówimy, że jeśli mamy prawidłowy uchwyt fizyki i ten uchwyt fizyki ma przechwycony komponent, to chcemy

77
00:05:57,510 --> 00:06:00,200
‫zrobić ciało tego oświadczenia if.

78
00:06:00,210 --> 00:06:02,820
‫Tak więc napisanie tego w ten sposób jest dość proste.

79
00:06:03,090 --> 00:06:12,180
‫Możemy powiedzieć, że jeśli uchwyt fizyki i uchwyt fizyki zostaną przechwycone jako komponent, możemy wykonać następujące czynności.

80
00:06:12,180 --> 00:06:18,390
‫Dzięki temu możemy usunąć tę wcześniejszą instrukcję powrotu if i nieco skrócić kod.

81
00:06:18,960 --> 00:06:26,340
‫Otóż sokoli wśród was może się martwić, że hej, odwołujemy się do tego uchwytu fizyki

82
00:06:26,340 --> 00:06:32,100
‫w instrukcji if, aby ocenić, czy to oświadczenie końcowe powinno działać.

83
00:06:32,790 --> 00:06:38,250
‫Teraz jest cecha i to, że najpierw oceni to, co po lewej stronie.

84
00:06:38,670 --> 00:06:43,860
‫A jeśli ta rzecz jest fałszywa, to nawet nie ocenia tego po prawej stronie.

85
00:06:43,860 --> 00:06:44,760
‫Nie musi.

86
00:06:44,760 --> 00:06:47,310
‫Już wie, że wynik będzie fałszywy.

87
00:06:47,670 --> 00:06:49,950
‫Nie musi niczego dalej oceniać.

88
00:06:50,250 --> 00:06:57,510
‫Oznacza to, że można bezpiecznie zrobić coś takiego, gdy wynik po prawej stronie kalkulatora jest bezpieczny

89
00:06:57,510 --> 00:07:01,260
‫tylko wtedy, gdy wynik po lewej jest prawdziwy.

90
00:07:01,830 --> 00:07:03,180
‫A to bardzo przydatna właściwość.

91
00:07:03,180 --> 00:07:09,000
‫I widzisz, że jest to używane dość często, gdy używasz wskaźników, najpierw sprawdzisz wskaźnik, a potem będziesz

92
00:07:09,000 --> 00:07:10,260
‫miał znak &.

93
00:07:10,260 --> 00:07:13,830
‫Ampersand, a następnie użyjesz wskaźnika po prawej stronie.

94
00:07:13,830 --> 00:07:18,450
‫Ale proszę, proszę, nie ulegaj pokusie, aby zamienić te dwa miejsca w kolejności.

95
00:07:18,660 --> 00:07:22,680
‫To nie zadziała w drugą stronę i będziesz mieć awarie.

96
00:07:23,040 --> 00:07:28,080
‫Przejdźmy więc do naszych komponentów tikowych, w których zasadniczo robimy dokładnie to samo.

97
00:07:28,080 --> 00:07:30,480
‫Chcieliśmy sprawdzić, czy mamy chwycone komponenty.

98
00:07:30,840 --> 00:07:36,930
‫Więc to, co możemy tutaj zrobić, to zrobić uchwyt fizyki i uchwyt fizyki.

99
00:07:37,500 --> 00:07:38,910
‫Strzałka złapała komponent.

100
00:07:38,910 --> 00:07:44,370
‫Nie potrzebujemy tego nie równego null wskaźnikowi, aby zachować porządek, a następnie możemy iść dalej i

101
00:07:44,370 --> 00:07:49,710
‫usunąć instrukcję if ze zwrotem i po prostu trzymać linie kodu w dół, zachować czytelność nieco

102
00:07:49,710 --> 00:07:50,190
‫wyższą.

103
00:07:50,460 --> 00:07:50,940
‫Świetna sprawa.

104
00:07:50,940 --> 00:07:57,180
‫W tym wykładzie zobaczyliśmy więc, jak używać operatorów end or a not w C++.

105
00:07:57,510 --> 00:07:58,740
‫Do zobaczenia na następnym wykładzie.

