1 00:00:00,000 --> 00:00:04,970 2 00:00:04,970 --> 00:00:07,220 DOUG LLOYD: ასე რომ, თუ თქვენ ნახეთ ჩვენი ვიდეო სტრუქტურები, 3 00:00:07,220 --> 00:00:10,950 თქვენ უკვე იცით, რომ ჩვენ გვაქვს უნარი განსაზღვროს საკუთარი მონაცემთა ტიპები. 4 00:00:10,950 --> 00:00:14,530 მაგრამ თუ თქვენ გამოიყენება სტრუქტურები, თქვენ იცით, რომ ზოგჯერ გამოყენებით იმ მონაცემთა ტიპები 5 00:00:14,530 --> 00:00:16,446 შეიძლება რეალურად იყოს პატარა cumbersome იმიტომ, რომ ჩვენ 6 00:00:16,446 --> 00:00:19,210 უნდა გამოვიყენოთ struct სიტყვით როდესაც ჩვენ ვმუშაობთ them-- 7 00:00:19,210 --> 00:00:21,257 struct ავტომობილი ან struct სტუდენტი. 8 00:00:21,257 --> 00:00:23,090 სწორედ ბევრი უნდა აკრიფოთ თუ ჩვენ უბრალოდ გვინდა 9 00:00:23,090 --> 00:00:24,830 რაღაც მარტივი, როგორიც სტრუქტურა. 10 00:00:24,830 --> 00:00:26,390 ჩვენ გვინდა, რომ ჰქონდეს ჩვენ გვინდა უნდა შეეძლოს მუშაობა რამ 11 00:00:26,390 --> 00:00:29,350 ცოტა მეტი ხერხია, როგორც int ან char, რაღაც ბევრი 12 00:00:29,350 --> 00:00:31,240 უფრო მოსახერხებელია ტიპის. 13 00:00:31,240 --> 00:00:33,100 >> საბედნიეროდ, არსებობს გზა უნდა გააკეთოს, C, 14 00:00:33,100 --> 00:00:37,150 რაღაც მოუწოდა typedef, რომელიც გზა, რათა შეიქმნას სტენოგრამის ან გადაწერილი 15 00:00:37,150 --> 00:00:38,640 სახელები მონაცემთა ტიპები. 16 00:00:38,640 --> 00:00:40,720 თქვენ შეგიძლიათ გადაწეროთ მონაცემები ტიპის, რომ უკვე არსებობს, 17 00:00:40,720 --> 00:00:43,970 ან თქვენ შეგიძლიათ დაწეროთ მონაცემთა ტიპები საკუთარი. 18 00:00:43,970 --> 00:00:46,890 >> პირველი, რაც თქვენ აკეთებთ არის განსაზღვროს ტიპის ნორმალური გზა, 19 00:00:46,890 --> 00:00:52,271 და მაშინ უბრალოდ იგივე, რომ ეს რაღაც else-- typedef ძველი სახელი ახალი სახელი. 20 00:00:52,271 --> 00:00:53,520 საკმაოდ მარტივია, უფლება? 21 00:00:53,520 --> 00:00:56,240 ასე რომ ჩვენ შეგვიძლია typedef მაგალითად, უკვე არსებული მონაცემების 22 00:00:56,240 --> 00:01:00,266 ტიპი ხელმოუწერელი char როგორც ბაიტი. 23 00:01:00,266 --> 00:01:03,140 და მაშინ, ამიერიდან, მას შემდეგ, რაც ჩვენ გააკეთა ამ ტიპის definition-- ერთხელ, 24 00:01:03,140 --> 00:01:07,570 რომელიც ჩვეულებრივ იქნება ზედა ჩვენი dot C ფაილი, ან dot H ფაილი 25 00:01:07,570 --> 00:01:10,590 ცალ-ცალკე, ჩვენ შეგვიძლია მხოლოდ გამოყენება bite ყველგან 26 00:01:10,590 --> 00:01:12,180 ჩვენ არ გამოიყენება ხელმოუწერელი char. 27 00:01:12,180 --> 00:01:14,300 სწორედ ბევრი მოკლე შეიტანოთ. 28 00:01:14,300 --> 00:01:19,280 >> In CS50 ბიბლიოთეკა, ჩვენ ამას ჩვენ typedef char ვარსკვლავი, როგორც სიმებიანი. 29 00:01:19,280 --> 00:01:21,400 იმიტომ, რომ ჩვენ რეფერირებადი მოშორებით იდეა მითითებას. 30 00:01:21,400 --> 00:01:25,072 ხოლო ის ფაქტი, რომ სიმებიანი ნამდვილად მომცეთ პირველი პერსონაჟი 31 00:01:25,072 --> 00:01:26,780 მასივი გმირები, იმიტომ, რომ ეს მხოლოდ 32 00:01:26,780 --> 00:01:29,863 ასე გაუგებარია, რომ თქვენი უფროსი გარშემო that-- მაგრამ ის ფაქტი, რომ ის, რასაც ჩვენ ვაკეთებთ. 33 00:01:29,863 --> 00:01:35,140 ეს ხაზი კოდი რეალურად არსებობს ამ CS50 dot H typedef char ვარსკვლავი სიმებიანი, 34 00:01:35,140 --> 00:01:39,021 მხოლოდ იმისათვის, რომ ცოტა ნაკლები cumbersome უნდა მოგვარდეს. 35 00:01:39,021 --> 00:01:41,520 უკვე თქვენ ვნახე ალბათ ცოტა მნიშვნელობა, 36 00:01:41,520 --> 00:01:44,160 მაგრამ typedef ხდება დიდი როდესაც ერთად სტრუქტურები, 37 00:01:44,160 --> 00:01:45,780 როგორც მე გააკეთა მინიშნება ადრე. 38 00:01:45,780 --> 00:01:48,550 სტრუქტურები აქვს ორი სიტყვა ტიპის სახელი. 39 00:01:48,550 --> 00:01:52,020 ასე რომ, ისინი შეიძლება მართლაც შემაშფოთებელი უნდა შეიქმნას ცვლადების ტიპის, 40 00:01:52,020 --> 00:01:56,310 ან [INAUDIBLE] საქართველოს struct რაღაც, თქვენი ხაზები შეგიძლიათ უბრალოდ მართლაც, მართლაც ხანგრძლივი. 41 00:01:56,310 --> 00:01:59,400 და ასე რომ თქვენ შეგიძლიათ გამოიყენოთ typedef მოვა რაღაც ბევრი მოკლეა. 42 00:01:59,400 --> 00:02:04,650 >> ასე რომ, თუ მე განსაზღვროს მანქანის ასეთია, მაქვს ჩემი განმარტებას car-- struct მანქანა, 43 00:02:04,650 --> 00:02:07,230 და შემდეგ გახსნა Curly გაუწიოს, ყველა სფეროში ჩემი სტრუქტურა, 44 00:02:07,230 --> 00:02:11,030 მჭიდრო Curly გაუწიოს, ნახევრად colon-- მას შემდეგ, რაც მე განისაზღვრება ჩემი მონაცემები ტიპის, 45 00:02:11,030 --> 00:02:15,680 შემიძლია typedef struct მანქანის როგორც მანქანის ხაზგასმა ტ. 46 00:02:15,680 --> 00:02:19,670 და მაშინ, როდესაც მე ვაკეთებ, რომ, ახლა ყველა დროს მე არ სხვაგვარად გამოიყენება struct 47 00:02:19,670 --> 00:02:22,680 მანქანაში, შემიძლია უბრალოდ გამოიყენოთ მანქანის ხაზგასმა ტ. 48 00:02:22,680 --> 00:02:26,480 სწორედ ბევრი უმოკლესი გზა გამოხატონ ამ იდეას ეს სტრუქტურა 49 00:02:26,480 --> 00:02:28,530 რომ უბრალოდ შეიქმნა. 50 00:02:28,530 --> 00:02:33,620 >> გარდა ამისა, რადგან სტრუქტურები იმდენად გამოიყენება typedef, 51 00:02:33,620 --> 00:02:37,980 იქ a-- შეგიძლიათ რეალურად განსაზღვროს ჩაწერეთ შორის დაწყების და დასასრული. 52 00:02:37,980 --> 00:02:42,020 ასე რომ, typedef სტრუქტურა ერთხელ როგორც წესი, typedef, ძველი სახელწოდება, ახალი სახელი, 53 00:02:42,020 --> 00:02:45,360 სადაც სახელები უკვე ტიპის, რომ თქვენ შექმნა. 54 00:02:45,360 --> 00:02:49,620 მაგრამ თქვენ შეგიძლიათ რეალურად განსაზღვროს სტრუქტურა მარჯვენა შუა typedef 55 00:02:49,620 --> 00:02:51,760 ნაცვლად, რომელმაც უნდა განსაზღვროს ცალკე და შემდეგ 56 00:02:51,760 --> 00:02:52,990 ნუ typedef იგი. 57 00:02:52,990 --> 00:02:55,780 და რომ გამოიყურება, ისევე, ამას typedef struct მანქანა, 58 00:02:55,780 --> 00:02:59,957 ღია Curly გაუწიოს, ყველა თქვენი სფეროში განმარტებები, მჭიდრო Curly გაუწიოს, მანქანის ტ. 59 00:02:59,957 --> 00:03:03,290 ასე რომ, ძველი სახელი არის ყველა, რომ პერსონალის წითელი, თქვენ უბრალოდ განსაზღვრის სტრუქტურა 60 00:03:03,290 --> 00:03:05,610 და დასახელებისგან იგი ამავე დროს. 61 00:03:05,610 --> 00:03:07,790 და მაშინ ახალი სახელი არის მანქანის ხაზგასმა ტ. 62 00:03:07,790 --> 00:03:10,150 ასე რომ, თუ ჩვენ დავიწყებთ გამოიყენოს ეს კოდი, ადრე მე 63 00:03:10,150 --> 00:03:13,279 შესაძლოა, განაცხადა, struct მანქანის MyCar ნახევრად მსხვილი ნაწლავის. 64 00:03:13,279 --> 00:03:14,820 მე არ უნდა გავაკეთოთ, რომ მთელი მსოფლიოს მასშტაბით. 65 00:03:14,820 --> 00:03:20,265 ახლა, რომ მე გამოიყენება typedef, მე შეგიძლიათ უბრალოდ ამბობენ მანქანის ხაზგასმა t, MyCar. 66 00:03:20,265 --> 00:03:22,640 სწორედ ბევრი მოკლე გზა ამის გაკეთება, და ის ფაქტი, რომ ეს 67 00:03:22,640 --> 00:03:24,515 იქნება ბევრი სხვა მოსახერხებელია, განსაკუთრებით 68 00:03:24,515 --> 00:03:27,730 როგორც თქვენ დაიწყოს გამოიყენოთ სტრუქტურები ბევრი უფრო თქვენი კოდი. 69 00:03:27,730 --> 00:03:28,810 >> მე Doug Lloyd. 70 00:03:28,810 --> 00:03:30,640 ეს არის CS50. 71 00:03:30,640 --> 00:03:32,415