أسئلة وأجوبة

كيف تنشئ الشرائح؟

افترض أن نوع الشريحة المنشأة حديثاً هو S وأن s0 هي القيمة الحرفية الصفرية لـ S.

الطريقة 1 (استخدام القيم الحرفية المركّبة)


	var aSlice = S{} // الطول والسعة كلاهما صفر
	// أو
	var aSlice = S{Len - 1: s0} // الطول والسعة كلاهما Len (ثابت)

سعة الشريحة الناتجة ليست محاذية دائماً لحجم صنف ذاكرة (memory class size). (أحجام أصناف الذاكرة مذكورة في Go Optimizations 101.)

الطريقة 2 (استخدام الدالة المضمّنة make):


	var aSlice = make(S, initialLength, capacity)
	// أو
	var aSlice = make(S, initialLength) // السعة == initialLength

سعة الشريحة الناتجة ليست محاذية دائماً لحجم صنف ذاكرة.

الطريقة 3 (استخدام الدالتين المضمّنتين append + make):


	var aSlice = append(S{}, make(S, initialLength)...)
	// أو
	var aSlice = append(S(nil), make(S, initialLength)...)
	// أو
	var aSlice = append(S{}, make(S, initialLength, capacity)...)
	// أو
	var aSlice = append(S(nil), make(S, initialLength, capacity)...)

مع سلسلة الأدوات الرسمية، تكون سعة الشريحة الناتجة محاذية لحجم صنف ذاكرة.