Jump to content

xX[استفسار]Xx شرح لي self.


Recommended Posts

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

متغير في اللغة self تعتبر

وتقدر تستخدمه في أكثر من شيء, كمثال :

 

local Number = { one = 1 } -- جدول ويحتوي على قِيَم

function Number.add (t, num) -- هنا نسوي وظيفة بداخل الجدول
	-- self هنا مانقدر نستخدم
	t.one = t.one + num -- هنا جبنا المتغير بس كان لازم نستدعي الجدول عشان نجيب المتغير اللي بداخلة بعكس اللي فوق
end -- نقفل الوظيفة

function Number:add ( num ) -- نسوي وظيفة بداخل الجدول
	-- self هنا نقدر نستخدم
	self.one = self.one + num; -- هنا جبنا المتغير بدون مانستدعي الجدول وزودنا القيمه على حسب البراميتر في الوظيفة
end -- نقفل الوظيفة


Number:add ( 4 ) -- نستدعي الوظيفة
print ( Number.one ) -- 5

-- أو تقدر تسويها كذا :

Number.add (Number, 4 ) -- نستدعي الوظيفة, لاحظ البرامتير الأول اللي راح يكون استدعاء للجدول
print ( Number.one ) -- 5

 

طبعاً ذا مثال عشان تفهم, تقدر تختصر كل ذا كذا :

 

local Number = { one = 1 } -- جدول ويحتوي على قِيَم

function Number.add (t, num) -- هنا نسوي وظيفة بداخل الجدول
	-- self هنا مانقدر نستخدم
	t.one = t.one + num -- هنا جبنا المتغير بس كان لازم نستدعي الجدول عشان نجيب المتغير اللي بداخلة بعكس اللي فوق
end -- نقفل الوظيفة

Number:add ( 4 ) -- نستدعي الوظيفة
print ( Number.one ) -- 5

-- أو تقدر تسويها كذا :

Number.add (Number, 4 ) -- نستدعي الوظيفة, لاحظ البرامتير الأول اللي راح يكون استدعاء للجدول
print ( Number.one ) -- 5

لاحظ اننا حذفنا الوظيفة بالكامل ^^

في الميتاتيبل ويسهل عليك كثير, بتحصل شرح في قسم الشروحات عنها self أيضاً تقدر تستخدم

 

اتمنى اني قدرت اوصل المعلومة :D

  • Like 2
  • Thanks 1
Link to comment
On 17/03/2020 at 21:26, Sha67 said:

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

متغير في اللغة self تعتبر

وتقدر تستخدمه في أكثر من شيء, كمثال :

 


local Number = { one = 1 } -- جدول ويحتوي على قِيَم

function Number.add (t, num) -- هنا نسوي وظيفة بداخل الجدول
	-- self هنا مانقدر نستخدم
	t.one = t.one + num -- هنا جبنا المتغير بس كان لازم نستدعي الجدول عشان نجيب المتغير اللي بداخلة بعكس اللي فوق
end -- نقفل الوظيفة

function Number:add ( num ) -- نسوي وظيفة بداخل الجدول
	-- self هنا نقدر نستخدم
	self.one = self.one + num; -- هنا جبنا المتغير بدون مانستدعي الجدول وزودنا القيمه على حسب البراميتر في الوظيفة
end -- نقفل الوظيفة


Number:add ( 4 ) -- نستدعي الوظيفة
print ( Number.one ) -- 5

-- أو تقدر تسويها كذا :

Number.add (Number, 4 ) -- نستدعي الوظيفة, لاحظ البرامتير الأول اللي راح يكون استدعاء للجدول
print ( Number.one ) -- 5

 

طبعاً ذا مثال عشان تفهم, تقدر تختصر كل ذا كذا :

 


local Number = { one = 1 } -- جدول ويحتوي على قِيَم

function Number.add (t, num) -- هنا نسوي وظيفة بداخل الجدول
	-- self هنا مانقدر نستخدم
	t.one = t.one + num -- هنا جبنا المتغير بس كان لازم نستدعي الجدول عشان نجيب المتغير اللي بداخلة بعكس اللي فوق
end -- نقفل الوظيفة

Number:add ( 4 ) -- نستدعي الوظيفة
print ( Number.one ) -- 5

-- أو تقدر تسويها كذا :

Number.add (Number, 4 ) -- نستدعي الوظيفة, لاحظ البرامتير الأول اللي راح يكون استدعاء للجدول
print ( Number.one ) -- 5

لاحظ اننا حذفنا الوظيفة بالكامل ^^

في الميتاتيبل ويسهل عليك كثير, بتحصل شرح في قسم الشروحات عنها self أيضاً تقدر تستخدم

 

اتمنى اني قدرت اوصل المعلومة :D

شكرا ولله انك ما قصرت

  • Thanks 1
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...