DOUG لويد: حتى إذا كنت قد شهدت لدينا شريط فيديو على الهياكل،
تعلمون أن لدينا القدرة على تحديد أنواع البيانات الخاصة بنا.
ولكن إذا قمت الهياكل المستخدمة، وانت تعرف أنه في بعض الأحيان استخدام تلك الأنواع البيانات
يمكن أن يكون في الواقع قليلا مرهقة لأننا
لديك لاستخدام الكلمة البنية عندما كنا نعمل مع them--
سيارة بنية أو بنية الطالب.
وهذا يعني الكثير لكتابة إذا كنا نريد فقط أن يكون
شيء بسيط، مثل هيكل.
نريد أن have-- نريد أن تكون قادرة على العمل مع الأشياء
وسيلة أكثر الاختزال قليلا، مثل صحيح أو حرف، شيئا كثيرا
أكثر ملاءمة للكتابة.
>> لحسن الحظ، هناك طريقة للقيام بذلك في C،
مع ما يسمى typedef والذي هو وسيلة لخلق الاختزال أو إعادة كتابة
أسماء لأنواع البيانات.
يمكنك إعادة كتابة البيانات أنواع موجودة بالفعل،
أو يمكنك الكتابة أنواع البيانات الخاصة بك.
>> أول شيء عليك القيام به هو لك تعريف نوع بالطريقة العادية،
ثم كنت مجرد الاسم المستعار إلى شيء else-- typedef واسم الاسم الجديد القديم.
جميلة واضحة، أليس كذلك؟
حتى نتمكن من typedef وعلى سبيل المثال، البيانات الموجودة بالفعل
نوع الحرف غير الموقعة كما بايت.
وبعد ذلك، من الآن فصاعدا، وبعد أن قمت جعل هذا النوع definition-- مرة أخرى،
التي عادة ما سوف يكون على رأس من نقطة ملفاتنا C، أو في H ملف نقطة
بشكل منفصل، يمكننا فقط استخدام دغة في كل مكان
كنا قد تستخدم الحرف غير الموقعة.
هذا هو أقصر كثيرا للكتابة.
>> في مكتبة CS50، ونحن نفعل this-- نحن typedef ونجمة شار كسلسلة.
لأننا تستخرج بعيدا عن فكرة من المؤشرات.
والواقع أن سلسلة حقا مؤشر إلى character-- أولا
مجموعة من الشخصيات، لأنه فقط
مربكة جدا للحصول على رأسك حول هكذا- يضرب ولكن في الواقع هذا ما نقوم به.
وهذا سطر من التعليمات البرمجية موجود بالفعل في CS50 نقطة H typedef وسلسلة نجمة شار،
فقط لجعل هذا أقل قليلا مرهقة لديك للتعامل معها.
إذا كنت قد رأيت ربما قليلا من القيمة هنا،
ولكن typedef ويصبح عظيم عندما جنبا إلى جنب مع الهياكل،
كما أشرت إليه سابقا.
هياكل لها اسم نوع من كلمتين.
وحتى أنها يمكن أن تكون مزعجة حقا لإنشاء متغيرات من هذا النوع،
أو (غير مسموع) من شيء البنية، الخاص بك خطوط يمكن أن مجرد الحصول على حقا، حقا طويل.
وهكذا يمكنك استخدام الرموز المميزة ل typedef القادمة بشيء أقصر كثيرا.
>> حتى لو كنت تعرف سيارة على النحو التالي، ولدي تعريفي للسيارة البنية car--،
ثم قم بفتح متعرج، كل مجالات البنية بلدي،
متعرج وثيق، وشبه colon--- بعد أن قمت بتعريف نوع البيانات الخاصة بي،
أستطيع أن typedef والبنية السيارة كما تسطير سيارة تي.
ثم عندما كنت قد فعلت ذلك، والآن كل البنية الوقت كنت قد استخدمت على خلاف ذلك
سيارة، ويمكنني أن مجرد استخدام سيارة تسطير ر.
هذا هو أقصر كثيرا من وسيلة ل التعبير عن هذه الفكرة من هذا الهيكل
بأنني خلقت للتو.
>> بدلا من ذلك، لأن الهياكل وهكذا تستخدم عادة في typedef و،
هناك a-- يمكنك تحديد الواقع اكتب ما بين بداية ونهاية.
وبالتالي فإن بنية typedef ومرة ​​اخرى عادة typedef و، الاسم القديم، اسم جديد،
حيث الأسماء بالفعل الأنواع التي قمت بإنشائها.
ولكن يمكنك تحديد الواقع هيكل الحق في منتصف typedef و
بدلا من الاضطرار إلى تعريف بشكل منفصل، ثم
القيام typedef ومنه.
والتي من شأنها أن تبدو وكأنها مجرد this-- typedef وسيارة البنية،
متعرج مفتوحة، كل من مجال عملك التعاريف، بالقرب متعرج، سيارة تي.
لذلك الاسم القديم هو كل هذه الأشياء في الأحمر، كنت مجرد تحديد هيكل
وتسمية ذلك في نفس الوقت.
ثم الاسم الجديد هو تسطير سيارة تي.
وحتى إذا نبدأ في استخدام هذا في التعليمات البرمجية، سابقا I
ربما قال، بنية سيارة mycar منقوطة.
حسنا أنا لم يكن لديك للقيام بذلك بعد الآن.
والآن، لقد استخدمت الرموز المميزة ل typedef، I يمكن أن أقول ر تسطير سيارة، mycar.
هذا هو أقصر كثيرا من طريقة للقيام بذلك، في واقع الأمر، فإنه من
ستكون أكثر بكثير مريحة، خصوصا
كما يمكنك البدء في استخدام الهياكل الكثير في التعليمات البرمجية.
>> أنا دوغ ويد.
هذا هو CS50.