"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > لماذا يظهر لي \"خطأ في بناء الجملة: فاصلة منقوطة غير متوقعة قبل أي شيء آخر\" في Go؟

لماذا يظهر لي \"خطأ في بناء الجملة: فاصلة منقوطة غير متوقعة قبل أي شيء آخر\" في Go؟

تم النشر بتاريخ 2024-11-09
تصفح:231

Why Am I Getting \

فاصلة منقوطة غير متوقعة قبل أي شيء آخر في Go: شرح تفصيلي

يواجه كود Go الخاص بك خطأ غير عادي في السطر 21: "خطأ في بناء الجملة: غير متوقع فاصلة منقوطة أو سطر جديد قبل أي شيء آخر." على الرغم من تأكيدك، يكشف الفحص الدقيق أن هناك بالفعل فاصلة منقوطة (;) قبل عبارة "آخر" في هذا السطر.

تنبع المشكلة الأساسية هنا من قاعدة الإدراج التلقائي للفاصلة المنقوطة في Go. عادة، تكون الفواصل المنقوطة اختيارية في Go؛ ومع ذلك، سيقوم المترجم تلقائيًا بإدراجها في نهاية أسطر معينة للحفاظ على التكامل النحوي. إحدى هذه الحالات هي عندما ينتهي السطر بقوس إغلاق '}'، مثل تلك التي تغلق عبارة "if" في السطر 21.

يشكل هذا السلوك عائقًا أمام عبارة "else" اللاحقة. في Go، يجب كتابة الكتلة "else" على نفس سطر القوس الختامي لعبارة "if". ولذلك، لا يمكن للمترجم إضافة فاصلة منقوطة في نهاية السطر 21 لأنها ستنشئ عبارتين منفصلتين، وهو بناء جملة غير صحيح.

لحل هذه المشكلة، ضع الكلمة الأساسية "آخر" مباشرة بعد قوس الإغلاق على السطر 21:

if subject == current_mid {
    current_topic[predicate] = append(current_topic[predicate], object)
} else {
    processTopic(current_mid, current_topic, xmlFile)
    current_topic = make(map[string][]string)
}

يضمن هذا التعديل أن عبارات "if" و"else" تشكل عبارة مركبة واحدة، كما هو مطلوب في بناء جملة Go.

فيما يتعلق بالأخطاء الموجودة في السطرين 28 و32، فهي تتعلق بـ عبارات خارج نطاق الوظيفة "الرئيسية". في Go، يجب تضمين البيانات داخل نص الوظيفة التي تنتمي إليها. لإصلاح هذه الأخطاء، قم بتضمين العبارات داخل الأقواس المتعرجة '}' داخل نص الوظيفة "الرئيسية".

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3