1 00:00:00,000 --> 00:00:03,080 >> Выступоўца 1: Аказваецца, мы можам паспяхова памяняць значэння ў двух 2 00:00:03,080 --> 00:00:07,670 зменныя шляхам перадачы іх у функцыянаваць не па значэнні або па копіі, але 3 00:00:07,670 --> 00:00:10,390 па спасылцы або па іх адрасах. 4 00:00:10,390 --> 00:00:12,740 Іншымі словамі, мы павінны выкарыстоўваць нешта вядома як паказальнік. 5 00:00:12,740 --> 00:00:15,580 Паказальнік, сапраўды, гэта толькі адрас некаторай зменнай. 6 00:00:15,580 --> 00:00:19,660 І таму, калі мы прадстаўляем функцыю з імем, скажам, памяняць з адрасам 7 00:00:19,660 --> 00:00:23,550 пераменная а таксама адрас іншы зменная, своп павінен быць ўпаўнаважаны 8 00:00:23,550 --> 00:00:26,090 ісці да кожнага з гэтых адрасоў а на самай справе змяніць 9 00:00:26,090 --> 00:00:27,360 значэнні, якія існуюць. 10 00:00:27,360 --> 00:00:28,890 >> Давайце разгледзім гэта ў кантэксце. 11 00:00:28,890 --> 00:00:31,360 Давайце перавызначыць своп наступным чынам. 12 00:00:31,360 --> 00:00:35,810 Па-першае, давайце зменім ня быць унутр але быць паказальнікам на міжнар або 13 00:00:35,810 --> 00:00:36,920 адрас у міжнар. 14 00:00:36,920 --> 00:00:40,820 Тады давайце зробім тое ж самае для B, змяняючы гэта ад міжнар быць паказальнікам на 15 00:00:40,820 --> 00:00:42,780 Int або адрас у міжнар. 16 00:00:42,780 --> 00:00:45,860 >> Тады ўнутры свопу, давайце яшчэ абвясціць TMP так што мы маем 17 00:00:45,860 --> 00:00:47,810 часовае месца для значэння х гадоў. 18 00:00:47,810 --> 00:00:52,430 Але'S значэнне не з'яўляецца сам па сабе, так, Зноў жа, у цяперашні час з'яўляецца адрас 19 00:00:52,430 --> 00:00:53,270 некаторага міжнар. 20 00:00:53,270 --> 00:00:57,320 Так што, калі мы хочам ісці па гэтым адрасе і атрымаць Int па гэтым адрасе, у нас ёсць 21 00:00:57,320 --> 00:01:03,020 разыменовать гэтага паказальніка, і шляхам зорка аператар, пісаць зорцы. 22 00:01:03,020 --> 00:01:05,470 >> Далей, я не хачу, каб змяніць значэнне. 23 00:01:05,470 --> 00:01:08,770 Я хачу, каб змяніць значэнне на , Маючы на ​​ўвазе, зноў жа, 24 00:01:08,770 --> 00:01:10,350 што гэта адрас. 25 00:01:10,350 --> 00:01:14,050 Такім чынам, каб зрабіць гэта, я зноў трэба сказаць зорка атрымлівае. 26 00:01:14,050 --> 00:01:18,360 А цяпер я хачу, каб пакласці ў кошту вось на б, не ад значэння Ь, якія 27 00:01:18,360 --> 00:01:19,720 таксама з'яўляецца адрасам. 28 00:01:19,720 --> 00:01:22,280 >> Такім чынам, яшчэ раз кажу, начлег. 29 00:01:22,280 --> 00:01:26,690 Тады ў сваёй апошняй радку, мне трэба перапісаць тое, што па адрасе б з 30 00:01:26,690 --> 00:01:28,970 тое, што было ў арыгінальным размяшчэнні ст. 31 00:01:28,970 --> 00:01:32,910 Каб зрабіць гэта, я зорка б атрымлівае TMP. 32 00:01:32,910 --> 00:01:34,820 >> Зараз у канцы дня, гэта функцыя па-ранейшаму проста 33 00:01:34,820 --> 00:01:35,950 тры радкі кода. 34 00:01:35,950 --> 00:01:39,860 Але таму што гэта маніпуляванне значэнні шляхам іх адрас, а ня 35 00:01:39,860 --> 00:01:43,700 сырыя значэнні, якія былі перададзеныя ў Функцыя, я сцвярджаю, што своп цяпер 36 00:01:43,700 --> 00:01:47,670 ўпаўнаважаны змяняць значэння, якія перадаюцца ў праз іх адрасы. 37 00:01:47,670 --> 00:01:49,510 >> Але мне трэба зрабіць адно змяненне ўсё яшчэ. 38 00:01:49,510 --> 00:01:52,190 Я больш не можа прайсці ў х і ў саміх сябе. 39 00:01:52,190 --> 00:01:55,030 Мне трэба прайсці ў адрасах х і у. 40 00:01:55,030 --> 00:01:58,160 А для гэтага, мне трэба некаторыя трохі іншыя абазначэнні наверсе. 41 00:01:58,160 --> 00:02:02,510 Я хачу, каб памяняць х і у, перадаючы адрас х, пазначаецца 42 00:02:02,510 --> 00:02:07,190 Ампэрсанд х, а таксама адрас у, пазначаецца Ампэрсанд у. 43 00:02:07,190 --> 00:02:10,570 >> Сапраўды гэтак жа, наверсе цяпер мне трэба змяніць прататып функцыі, каб 44 00:02:10,570 --> 00:02:14,980 адпавядаць змены, якія я зрабіў, так што , Зноў жа, гэта паказальнік на міжнар. 45 00:02:14,980 --> 00:02:17,190 б, зноў жа, гэта паказальнік на міжнар. 46 00:02:17,190 --> 00:02:18,770 І цяпер я магу выратаваць мой файл. 47 00:02:18,770 --> 00:02:20,680 І давайце перакампіляваць і запусціць яго. 48 00:02:20,680 --> 00:02:25,330 >> Зрабіць своп кропка слэш своп. 49 00:02:25,330 --> 00:02:29,660 І на гэты раз, х і ў сапраўды зараз месцамі так, што іх значэння не 50 00:02:29,660 --> 00:02:31,950 1 і 2, але 2 і 1. 51 00:02:31,950 --> 00:02:34,900