الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال في المصفوفات

بدأه AKCorp في 23 فبراير 2008 · 2 رد · 636 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله

أنا باستخدم كل من فئة الـ Array وفئة الـ List (of)

لكي اعمل مصفوفة يمكن التعامل مع اي من عناصرها مباشرة كالتالي:-

Dim MyArray(10) as Point
Dim MyList as List (Of Point)

Dim Int1 as Integer = MyArray(3).X
Dim Int2 as Integer = MyList (3).X

الميزة في List أنها يمكن بها اضافة عنصر في أي ترتيب تريده وإزالة أي عنصر في أي ترتيب تريده

لكن المشكلة تكمن أن الـ List عندما تحب أن تصل لأي عنصر من عناصرها وتعدل في أحد خصائصه لا يجدي ذلك لأنه لا يوصلك إليه بالمرجعBy Refrence وإنما يوصلك إليه بالقيمة By Value !

وكذلك فإن استدعاء إجراء من داخل الـ List عديم القيمة!

جرب أي من الأوامر التالية:-

MyList(0).X = 0

MyList(0).X.Add(MySize)

لأسف لن يجدي

هل من طريقة للاستفادة من مميزات الأولى ومميزات الثانية ؟

حيث أن ذلك يسببلي مشكلة كبيرة في كل التطبيقات التي استخدمها فيها

جزاكم الله كل خير

#2

للرفع :(

#3

هل أنت متأكد من هذه النقطة؟

لقد قمت بتجربة للتو و تأكدت من أن List تتعامل مع الـreference type بشكل طبيعي. هذه فورمة فيها ثلاث buttons.

Public Class test

	Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
		Dim l As New List(Of Button)

		l.Add(Button1)
		l.Add(Button2)
		l.Add(Button3)

		l(1).Text = "done!"
	End Sub
End Class

مواضيع مشابهة