0Pricing
Zig Academy · درس

الهياكل المجهولة والصفوف

أنشئوا قيماً مجمعة عند الحاجة

الهياكل المجهولة والصفوف درس مجاني في Zig Academy على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Zig Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Zig Academy 4 دروس في المجموع.

أحيانًا تحتاجون إليه مرة واحدة

ليست كل مجموعة جديرة بنوع مُسمّى. يتيح لكم Zig كتابة بنية مجهولة مباشرةً في موضع استخدامها.

احذفوا الاسم فحسب

يبدأ الحرفي للبنية المجهولة بـ .{ ويسرد الحقول بأسمائها، من دون كتابة نوع قبله.

const p = .{ .x = 1, .y = 2 };

استخدموا الحقول بالطريقة المعتادة

تقرؤون الحقول بالطريقة نفسها كما في البنية المُسمّاة، باستخدام النقطة. فالقيمة p.x هي 1 والقيمة p.y هي 2.

const sum = p.x + p.y;

حوّلوها إلى نوع مُسمّى

يمكن للحرفي المجهول أن يتحوّل ضمنيًا إلى بنية مُسمّاة عندما يكون النوع الهدف معروفًا، مثل قيمة الإرجاع.

fn make() Point {
    return .{ .x = 0, .y = 0 };
}

لا تملك الصفوف أسماء للحقول

احذفوا أسماء الحقول لتحصلوا على صف: وهو بنية مجهولة تُصلون إلى حقولها حسب الموضع.

const pair = .{ 1, 2 };

فهرسة صف

يمكنكم الوصول إلى حقل الصف باستخدام رقم يُكتب مثل اسم الحقل. لذلك تكون pair[0] هي 1 وpair[1] هي 2.

const first = pair[0];

لا مشكلة في الأنواع المختلطة

يمكن أن يكون لكل حقل في الصف نوع مختلف. فيمكن لحرفي واحد أن يحتوي على int وقيمة منطقية ونص في آن واحد.

const row = .{ 42, true, "hi" };

للصفوف طول

لا يزال الصف بنية، ولذلك يملك len يُعرف وقت الترجمة، ويمكنكم قراءته باستخدام tuple.len.

const n = row.len; // 3

مفيد جدًا لمعاملات print

تتلقى std.debug.print صفًا من القيم لتنسيقها. أما .{} الذي تمررونه فهو صف مجهول.

std.debug.print("{} {}\n", .{ 1, 2 });

التكرار على صف

بما أن الطول معروف وقت الترجمة، يمكنكم المرور على حقول الصف باستخدام حلقة inline for.

inline for (row) |field| {
    _ = field;
}

مُسمّى أم موضعي

استخدموا بنية مجهولة عندما تضيف الأسماء وضوحًا، واستخدموا الصف عندما تكونون بحاجة إلى مجموعة قصيرة مرتبة فحسب.

تحقق سريع

ما الفرق بين الصف والبنية المجهولة المُسمّاة؟

مراجعة

تعرّفتم إلى البنى المجهولة والصفوف: فـ .{ .x = 1 } مضمن ومُسمّى، بينما .{ 1, 2 } صف موضعي. 📦

الأسئلة الشائعة

هل درس «الهياكل المجهولة والصفوف» مجاني؟

نعم — نص درس «الهياكل المجهولة والصفوف» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Zig Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Zig Academy 4 دروس في المجموع.

ماذا ستتعلم في «الهياكل المجهولة والصفوف»؟

أنشئوا قيماً مجمعة عند الحاجة تتمرن على Zig Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Zig Academy؟

لا تُشترط خبرة سابقة. Zig Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.

كم من الوقت يستغرق درس «الهياكل المجهولة والصفوف»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Zig Academy هذا؟

نعم. كل درس في Zig Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. التصريح عن الهياكل والحقول
  2. الطرائق ومعامل self
  3. القيم الافتراضية للحقول
  4. الهياكل المجهولة والصفوف
← العودة إلى Zig Academy