گولانگ میں ڈھانچے کیا ہیں؟

Gwlang My Anch Kya Y



گو لینگویج میں، ایک ڈھانچہ متغیرات (فیلڈز) کا مجموعہ ہے جو ایک نام کے تحت گروپ کیا جاتا ہے۔ یہ ایک جامع ڈیٹا کی قسم ہے جو ہمیں متعلقہ معلومات رکھنے کے لیے حسب ضرورت ڈیٹا ڈھانچے بنانے کی اجازت دیتی ہے۔ گو میں ڈھانچے C، اور C++ جیسے آبجیکٹ اورینٹڈ پروگرامنگ کی کلاسوں کی طرح ہیں، لیکن وہ وراثت کی حمایت نہیں کرتے ہیں۔ اس کے بجائے، وہ کوڈ کو دوبارہ استعمال کرنے کے لیے کمپوزیشن پر انحصار کرتے ہیں۔ یہ مضمون گولانگ میں ڈھانچے کا احاطہ کرتا ہے اور ہم کس طرح ڈھانچے کے ارکان کا اعلان اور ان تک رسائی حاصل کر سکتے ہیں۔

گولانگ میں ڈھانچہ کیا ہے؟

گولانگ میں، ایک ڈھانچہ ایک جامع ڈیٹا کی قسم ہے جو صفر یا زیادہ نامزد فیلڈز پر مشتمل ہوتی ہے، جن میں سے ہر ایک کی ایک مخصوص قسم ہوتی ہے۔ کسی ڈھانچے کے فیلڈز کسی بھی قسم کے ہو سکتے ہیں، بشمول دیگر ڈھانچے، صفوں، فنکشنز، یا انٹرفیسز۔







گولانگ میں ڈھانچے کی ایک مثال یہ ہے:



قسم شخصی ڈھانچہ {
مکمل نام کی تار
سال پرانا int
مقام کا پتہ
}
قسم ایڈریس کا ڈھانچہ {
StreetName  سٹرنگ
CityName    سٹرنگ
ملک کے نام کی تار
}


یہاں ہم نے ایک شخصی ڈھانچہ کی وضاحت کی ہے جس میں تین فیلڈز ہیں: FullName, Years Old, اور Location۔ لوکیشن فیلڈ خود ایک ڈھانچہ ہے جس میں تین فیلڈز ہیں: StreetName، CityName، اور Country Name۔



گولانگ میں ساخت کا اعلان کیسے کریں۔

ہم استعمال کرتے ہوئے گولانگ میں ایک ڈھانچے کا اعلان کر سکتے ہیں۔ قسم کلیدی لفظ ساخت کے نام کی وضاحت کے بعد کی گئی ہے۔ قسم کلیدی لفظ، اور اس کے فیلڈز گھوبگھرالی منحنی خطوط وحدانی میں بند ہیں۔ {} . گو میں ساخت کا اعلان کرنے کے لیے نحو یہ ہے:





قسم ساخت کا نام ساخت {
FieldName1 FieldType1
FieldName2 FieldType2
...
}


ذیل میں ایک مثال دی گئی ہے کہ کس طرح ایک ڈھانچہ نامی شخص کو دو فیلڈز کے نام اور عمر کی اقسام کے سٹرنگ اور int کے ساتھ ڈکلیئر کیا جائے:

قسم شخصی ڈھانچہ {
نام کی تار
عمر int
}


مندرجہ بالا کوڈ میں، ہم نے استعمال کیا ہے قسم کلیدی لفظ جس کا نام ایک نئے ڈھانچے کا اعلان کرنا ہے۔ شخص دو شعبوں کے ساتھ نام قسم کی تار اور عمر قسم کے int. کھیتوں کو a سے الگ کیا گیا ہے۔ نئی لائن کردار لیکن ایک نیم کالون (؛) ان کو الگ کرنے کے لیے بھی استعمال کیا جا سکتا ہے۔



گولانگ میں سٹرک ممبر تک کیسے رسائی حاصل کی جائے۔

گو زبان میں کسی ڈھانچے کی مثال کے فیلڈز تک رسائی حاصل کرنے کے لیے ڈاٹ ('') آپریٹر استعمال کیا جاتا ہے. اس ڈاٹ آپریٹر کے بعد فیلڈ کا نام آتا ہے۔ یہاں ایک مثال ہے کہ کس طرح کسی شخص کی ساخت مثال کے نام اور عمر کے شعبوں تک رسائی حاصل کی جائے:

// ایک نیا بنائیں ` شخص ` نام کے ساتھ struct مثال 'کاش' اور عمر 24
کاش:= شخص { نام: 'کاش' عمر: 24 }

// کے شعبوں تک رسائی حاصل کریں۔ ` کاش ` struct مثال
fmt.Println ( kash.name ) // آؤٹ پٹ: 'کاش'
fmt.Println ( kash.age ) // آؤٹ پٹ: 24


مندرجہ بالا کوڈ میں، ہم نے نام کے ساتھ kash نامی ایک نئی Person struct مثال بنائی ہے۔ کاش اور عمر 24 . اس کے بعد ہم کیش ساخت مثال کے نام اور عمر کے فیلڈز تک رسائی حاصل کرتے ہیں۔ ('') آپریٹر اور انہیں کنسول پر پرنٹ کریں۔

یہ نوٹ کرنا ضروری ہے کہ کسی ڈھانچے کی مثال کے شعبوں تک ڈاٹ اشارے کے ذریعے رسائی حاصل کی جاتی ہے نہ کہ تیر اشارے (->) کچھ دوسری پروگرامنگ زبانوں میں استعمال ہوتا ہے۔ ڈاٹ نوٹیشن کو گو میں مستقل طور پر سٹرکٹس کے فیلڈز کے ساتھ ساتھ خصوصیات اور دیگر اقسام کے طریقوں تک رسائی کے لیے استعمال کیا جاتا ہے۔

گولانگ میں سٹرک ممبر کا اعلان کرنے اور ان تک رسائی کا کوڈ کی مثال

ذیل میں Go میں Person struct کا اعلان کرنے اور اس کی اقدار کو سکرین پر پرنٹ کرنے کی ایک مکمل مثال ہے۔

اہم پیکیج
درآمد 'fmt'
قسم شخصی ڈھانچہ {
نام کی تار
عمر int
}
فنک مین ( ) {
// ایک نیا بنائیں ` شخص ` نام کے ساتھ struct مثال 'کاش' اور عمر 24
کاش:= شخص { نام: 'کاش' عمر: 24 }
// پرنٹ کریں۔ ` نام ` اور ` عمر ` کی ` کاش ` کنسول کے لئے struct مثال
fmt.Printf ( 'نام: %s \n ' , kash.name )
fmt.Printf ( عمر: %d \n ' , kash.age )
}


اوپر لکھے ہوئے کوڈ میں، ہم نے پہلے اعلان کیا۔ شخص ساخت اس ڈھانچے میں دو فیلڈز ہیں جو نام اور عمر ہیں۔ اس کے بعد، ہم نے نام کے ساتھ کیش کے نام سے ایک نیا شخص ساخت مثال بنایا کاش اور عمر 24 .

نام اور عمر کے شعبوں کو ظاہر کرنے کے لیے، ہم استعمال کرتے ہیں۔ fmt.Printf کے ساتھ فنکشن %s اور %d بالترتیب نام اور عمر کے شعبوں کو پرنٹ کرنے کے لیے فارمیٹ کی وضاحت کرنے والے۔

چلانے کے بعد، کوڈ درج ذیل آؤٹ پٹ کنسول پر ظاہر ہوتا ہے:

فنکشن دلائل کے طور پر ساخت کو کیسے پاس کریں۔

گو میں فنکشن آرگومینٹ کے طور پر کسی سٹرک کو پاس کرنے کے لیے، ہمیں فنکشن کے دستخط میں پیرامیٹر کی قسم کے طور پر سٹرک کی قسم کی وضاحت کرنی ہوگی، اور پھر فنکشن کو کال کرتے وقت struct مثال کو بطور دلیل پاس کرنا ہوگا۔

مثال کا کوڈ

مندرجہ ذیل مثال سے پتہ چلتا ہے کہ گو لینگویج میں کسی فنکشن کی دلیل کے طور پر کسی Person struct مثال کو کیسے منتقل کیا جائے اور اس کی اقدار کو اسکرین پر پرنٹ کیا جائے۔

اہم پیکیج
درآمد 'fmt'
// نام کی ساخت کا اعلان کریں۔ ` شخص ` دو شعبوں کے ساتھ: ` نام ` اور ` عمر `
قسم شخصی ڈھانچہ {
نام کی تار
عمر int
}
// اعلان کرنا a فنکشن نامزد ` پرنٹ پرسن ` کہ ایک لیتا ہے ` شخص ` ساخت کے طور پر ایک دلیل
فنک پرنٹ پرسن ( p شخص ) {
fmt.Printf ( 'نام: %s \n ' , p.name )
fmt.Printf ( عمر: %d \n ' صفحہ صفحہ )
}
فنک مین ( ) {
// ایک نیا بنائیں ` شخص ` نام کے ساتھ struct مثال 'کاش' اور عمر 24
کاش:= شخص { نام: 'کاش' عمر: 24 }
// پاس کریں۔ ` کاش ` struct مثال کے طور پر ` پرنٹ پرسن ` فنکشن
پرنٹ پرسن ( کاش )
}


مندرجہ بالا کوڈ میں، ہم نے سب سے پہلے دو فیلڈز کے ساتھ Person struct کا اعلان کیا، نام اور عمر . اس کے بعد ہم نامی ایک فنکشن کا اعلان کرتے ہیں۔ پرنٹ پرسن جو کہ ایک Person struct کو بطور دلیل لیتا ہے اور fmt.Printf فنکشن کا استعمال کرتے ہوئے اس کے نام اور عمر کے فیلڈز کو اسکرین پر پرنٹ کرتا ہے۔

مین فنکشن میں، ہم نے نام کے ساتھ ایک نیا Person struct instance بنایا جس کا نام kash ہے۔ کاش اور عمر 24۔ پھر ہم پرنٹ پرسن فنکشن کو کال کرکے اور پاس کرکے کیش اسٹرکٹ مثال کو پرنٹ پرسن فنکشن میں منتقل کرتے ہیں۔ کاش دلیل کے طور پر.

مندرجہ بالا کوڈ کو چلانے کے بعد کنسول پر درج ذیل آؤٹ پٹ دیکھی جا سکتی ہے:

نتیجہ

گولانگ میں، ڈھانچے پیچیدہ ڈیٹا کی اقسام کی نمائندگی کر سکتے ہیں اور متعلقہ ڈیٹا کو سمیٹ سکتے ہیں۔ ایک ڈھانچہ ایک ڈیٹا کی قسم ہے جو ایک یا زیادہ فیلڈز سے بنی ہوتی ہے، جن میں سے ہر ایک کو ایک مخصوص نام اور قسم دی جاتی ہے۔ کسی ڈھانچے کے فیلڈز کسی بھی قسم کے ہو سکتے ہیں، بشمول دیگر ڈھانچے، صفوں، فنکشنز، یا انٹرفیسز۔ اس مضمون میں گو ڈھانچے پر تفصیل سے بحث کی گئی ہے، ساختی عناصر کے اعلان اور ان تک رسائی کے بارے میں مزید معلومات کے لیے مضمون پڑھیں۔