গোলং-এ স্ট্রাকট ফিল্ডের জন্য ডিফল্ট মান কীভাবে বরাদ্দ করবেন?

Golam E Strakata Phildera Jan Ya Diphalta Mana Kibhabe Baradda Karabena



গোলং একটি আধুনিক প্রোগ্রামিং ভাষা যা সাম্প্রতিক বছরগুলিতে জনপ্রিয়তা অর্জন করেছে। গোলাং এর শক্তিশালী বৈশিষ্ট্যগুলির মধ্যে একটি হল স্ট্রাকটগুলিকে সংজ্ঞায়িত এবং ম্যানিপুলেট করার ক্ষমতা। কাঠামো ব্যবহারকারী-সংজ্ঞায়িত ডেটা প্রকার যা ডেভেলপারদের একটি একক অবজেক্টে সম্পর্কিত ডেটা ক্ষেত্রগুলিকে একত্রিত করতে দেয়। গো-তে, কাঠামো পেতে পারি ডিফল্ট মান তাদের ক্ষেত্রগুলিতে বরাদ্দ করা হয়েছে, যা তাদের শুরু করা অনেক সহজ করে তোলে।

এই প্রবন্ধে, আমরা কীভাবে একটি বরাদ্দ করতে হয় তা অন্বেষণ করব ডিফল্ট মান গোলং-এর একটি কাঠামোর ক্ষেত্রের জন্য।

স্ট্রাকট ক্ষেত্র কি?

প্রথমত, এর ধারণাটি বোঝা অপরিহার্য struct ক্ষেত্র . দ্য struct ক্ষেত্র ভেরিয়েবলগুলিকে একটি গঠনের জন্য গোষ্ঠীবদ্ধ করা হয় গঠন বস্তু প্রতিটি struct ক্ষেত্র একটি নাম এবং একটি ডেটা টাইপ আছে। উদাহরণস্বরূপ, একজন ব্যক্তির প্রতিনিধিত্ব করে এমন একটি কাঠামোতে নাম, বয়স এবং লিঙ্গের মতো ক্ষেত্র থাকতে পারে।







গোলং-এ স্ট্রাকট ফিল্ডের জন্য ডিফল্ট মান কীভাবে বরাদ্দ করবেন?

ডিফল্ট মান Go ব্যবহার করে struct ক্ষেত্রগুলির জন্য বরাদ্দ করা যেতে পারে:



  • ডিফল্ট জিরো মান
  • কনস্ট্রাক্টর
  • স্ট্রাকট লিটারেল
  • ডিফল্ট ক্ষেত্র মান

1: ডিফল্ট জিরো মান

Go-তে, struct ক্ষেত্রগুলিতে ডিফল্ট মান নির্ধারণ করা 'এর মাধ্যমে অর্জন করা যেতে পারে শূন্য মান ' বৈশিষ্ট্য। এই বৈশিষ্ট্যটি স্বয়ংক্রিয়ভাবে 'এর একটি ডিফল্ট মান নির্ধারণ করে 0 'বা' মিথ্যা ” ডাটা টাইপের উপর নির্ভর করে প্রতিটি অপ্রবর্তিত ক্ষেত্রে। এর মানে হল যে আপনাকে স্ট্রাকটে প্রতিটি ক্ষেত্রের জন্য স্পষ্টভাবে ডিফল্ট মান সেট করতে হবে না, যেহেতু Go আপনার জন্য এটি করবে।



অনেক ক্ষেত্রের সাথে বৃহৎ স্ট্রাকচারের সাথে কাজ করার সময় এই বৈশিষ্ট্যটি কাজে আসতে পারে, কারণ এটি প্রতিটি ক্ষেত্রের জন্য ম্যানুয়ালি ডিফল্ট মান সেট করার সময় এবং প্রচেষ্টা বাঁচায়।





এখানে একটি উদাহরণ যা স্ট্রাকট ক্ষেত্রগুলির জন্য ডিফল্ট মান নির্ধারণ করতে শূন্য মান ব্যবহার করে:

প্যাকেজ প্রধান

আমদানি 'fmt'

প্রকার ব্যক্তি গঠন {
নাম   স্ট্রিং
বয়স    int
উচ্চতা float64
IsMale bool
}

ফাংশন প্রধান ( ) {
p1 := ব্যক্তি { নাম: 'জন' , বয়স: 30 }
fmt.Println ( p1.নাম )
fmt.Println ( p1.বয়স )
fmt.Println ( p1.উচ্চতা )
fmt.Println ( p1.IsMale )
}

উপরের কোডটি একজন ব্যক্তিকে সংজ্ঞায়িত করে গঠন চারটি ক্ষেত্র সহ: নাম, বয়স, উচ্চতা এবং IsMale, যার সবকটিই bool ডেটা টাইপ। তারপর, আমরা ব্যক্তি শ্রেণীর, p1-এর একটি নতুন উদাহরণ তৈরি করি এবং ক্ষেত্রের নাম এবং মানগুলি নির্দিষ্ট করতে struct লিটারাল ব্যবহার করে এর কিছু ক্ষেত্র শুরু করি। দ্য ডিফল্ট শূন্য মান ক্ষেত্রগুলির জন্য যেগুলি শুরু করার সময় স্পষ্টভাবে সেট করা হয়নি সেগুলি প্রদর্শিত হয় যখন আপনি ব্যবহার করে ক্ষেত্রের মান মুদ্রণ করেন fmt.Println .



আউটপুট

2: কনস্ট্রাক্টর

লিখে ক নির্মাণকারী struct-এর জন্য ফাংশন, আপনি গোলং-এর struct ক্ষেত্রের ডিফল্ট মানও দিতে পারেন। দ্য নির্মাণকারী ফাংশন স্ট্রাকটের একটি নতুন উদাহরণ তৈরি করে এবং এর ক্ষেত্রের জন্য ডিফল্ট মান সেট করে। এই পদ্ধতিটি প্রচেষ্টা এবং সময় সাশ্রয় করে, বিশেষ করে যখন অসংখ্য ক্ষেত্রের সাথে বিশাল স্ট্রাকটের সাথে ইন্টারঅ্যাক্ট করা হয়।

এখানে একটি সংজ্ঞায়িত কিভাবে একটি উদাহরণ নির্মাণকারী একটি কাঠামোর জন্য ডিফল্ট ক্ষেত্রের মান সহ ফাংশন:

প্যাকেজ প্রধান

আমদানি 'fmt'

প্রকার ব্যক্তি গঠন {
নাম    স্ট্রিং
বয়স int
ঠিকানা স্ট্রিং
}
func NewPerson ( ) * ব্যক্তি {
ফিরে এবং ব্যক্তি {
নাম: 'জন ডো' ,
বয়স: 30 ,
ঠিকানা: '123 প্রধান সেন্ট' ,
}
}
ফাংশন প্রধান ( ) {
p := নতুন ব্যক্তি ( )
fmt.Println ( p.Name, p.Age, p.Address )
}

উপরের কোডে, ক ব্যক্তি struct সংজ্ঞায়িত করা হয়, সেইসাথে নতুন মানুষ() ফাংশন, যা একটি নতুন উদাহরণ তৈরি করে ব্যক্তি পূর্বনির্ধারিত ডিফল্ট সহ struct। আমরা কল নতুন মানুষ() ভিতরে প্রধান() সঙ্গে একটি নতুন ব্যক্তি উদাহরণ তৈরি করতে ডিফল্ট ক্ষেত্রের মান , এবং তারপরে আমরা সেই উদাহরণের ক্ষেত্রের মানগুলি মুদ্রণ করি।

আউটপুট

3: স্ট্রাকট লিটারেল

গোলং-এ, আপনি ব্যবহার করে struct ক্ষেত্রের জন্য ডিফল্ট মান সেট করতে পারেন struct আক্ষরিক যেমন. সহজভাবে স্ট্রাকটের একটি নতুন উদাহরণ তৈরি করুন এবং প্রতিটি ক্ষেত্রের জন্য মান সেট করুন যা শুরু করতে হবে। আপনি যদি ক্ষেত্রগুলির জন্য ডিফল্ট মান সেট করতে চান যা আপনি স্পষ্টভাবে শুরু করেন না, আপনি শূন্য-মান বৈশিষ্ট্যটি ব্যবহার করতে পারেন।

এখানে কিভাবে ব্যবহার করতে হয় একটি উদাহরণ struct আক্ষরিক একটি কাঠামোর জন্য ডিফল্ট ক্ষেত্রের মান সেট করতে:

প্যাকেজ প্রধান

আমদানি 'fmt'

প্রকার ব্যক্তি গঠন {
নাম    স্ট্রিং
বয়স int
ঠিকানা স্ট্রিং
}
ফাংশন প্রধান ( ) {
p := ব্যক্তি {
নাম: 'জন ডো' ,
বয়স: 30 ,
}
fmt.Println ( p.Name, p.Age, p.Address )
}

উপরের কোডে, আমরা একটি সংজ্ঞায়িত করি ব্যক্তি এই উদাহরণে struct এবং এর ক্ষেত্রের জন্য একটি struct আক্ষরিক এবং ডিফল্ট মান ব্যবহার করে এটির একটি নতুন উদাহরণ তৈরি করুন। একটি নতুন ব্যক্তি ইনস্ট্যান্স main() এ তৈরি করা হয়েছে কিছু ফিল্ডের মান পপুলেটেড এবং অন্যগুলো ফাঁকা রেখে। যেহেতু ঠিকানা ক্ষেত্রটি আরম্ভ করা হয়নি, এটি খালি স্ট্রিংটি পায় যা এই ক্ষেত্রের জন্য ডিফল্ট মান। অবশেষে, আমরা ব্যক্তি উদাহরণের ক্ষেত্রের মানগুলি মুদ্রণ করি।

আউটপুট

4: ডিফল্ট ক্ষেত্র মান

বরাদ্দ করা ডিফল্ট মান প্রতি struct ক্ষেত্র ইন গো একটি সহজবোধ্য প্রক্রিয়া। দ্য ডিফল্ট মান একটি struct ক্ষেত্রের জন্য সিনট্যাক্স ব্যবহার করে সেট করা যেতে পারে fieldName:defaultValue . উদাহরণস্বরূপ, নিম্নলিখিত struct সংজ্ঞা বিবেচনা করুন:

প্রকার ব্যক্তি গঠন {
নাম স্ট্রিং
বয়স int
লিঙ্গ স্ট্রিং
}

দায়িত্ব অর্পণ করা ডিফল্ট মান এই কাঠামোর ক্ষেত্রে, আমরা নিম্নলিখিত সিনট্যাক্স ব্যবহার করতে পারি:

p := ব্যক্তি {
নাম: 'জন ডো' ,
বয়স: 30 ,
লিঙ্গ: 'পুরুষ' ,
}

উপরের উদাহরণে, আমরা বরাদ্দ করেছি ডিফল্ট মান ব্যক্তি কাঠামোর ক্ষেত্রগুলিতে। আমরা যদি প্রারম্ভিকতার সময় কোন মান বাদ দেই, তাহলে ডিফল্ট মান পরিবর্তে ব্যবহার করা হবে। উদাহরণস্বরূপ, যদি আমরা একটি ব্যক্তি অবজেক্টকে এভাবে শুরু করি:

p := ব্যক্তি {
নাম: 'জানি দই' ,
}

ফলে Person অবজেক্টে থাকবে ডিফল্ট মান বয়স এবং লিঙ্গ ক্ষেত্রের জন্য, যা যথাক্রমে 0 এবং একটি খালি স্ট্রিং।

এখানে একটি সম্পূর্ণ কোড রয়েছে যা উপরের প্রক্রিয়াটিকে চিত্রিত করে:

প্যাকেজ প্রধান
আমদানি 'fmt'

প্রকার ব্যক্তি গঠন {
নাম   স্ট্রিং
বয়স    int
লিঙ্গ স্ট্রিং
}
ফাংশন প্রধান ( ) {
p1 := ব্যক্তি {
নাম: 'জন ডো' ,
বয়স: 30 ,
লিঙ্গ: 'পুরুষ' ,
}
fmt.Println ( p1 )

p2 := ব্যক্তি {
নাম: 'জেরেমি' ,
}
fmt.Println ( p2 )
}

উপরের উদাহরণে, আমরা একটি Person struct তৈরি করি যার তিনটি ক্ষেত্র রয়েছে: নাম, একটি int প্রতিনিধিত্বকারী বয়স, এবং লিঙ্গ, লিঙ্গ প্রতিনিধিত্বকারী একটি স্ট্রিং। স্ট্রাকট ইনিশিয়ালাইজেশন সিনট্যাক্স তারপরে দুটি ব্যক্তি উদাহরণ, p1 এবং p2 তৈরি করতে ব্যবহৃত হয়। p1 নামের জন্য 'জন ডো', বয়সের জন্য '30' এবং লিঙ্গের জন্য 'পুরুষ' মান দিয়ে আরম্ভ করা হয়েছে, যা স্পষ্টভাবে দেওয়া হয়েছে এমন সমস্ত মান। যেহেতু আমরা বয়স এবং লিঙ্গের জন্য মান দিইনি, তাই যথাক্রমে 0 এর ডিফল্ট মান এবং একটি খালি স্ট্রিং তাদের জন্য বরাদ্দ করা হবে। p2 প্রাথমিকভাবে প্রদত্ত নাম ক্ষেত্র দিয়ে শুরু করা হয়।

আউটপুট

উপসংহার

বরাদ্দ করা ডিফল্ট মান ইন গো এই ভাষার সাথে প্রোগ্রামিংয়ের একটি অপরিহার্য দিক। এটি নিশ্চিত করতে সাহায্য করে যে তৈরি করা প্রতিটি struct দৃষ্টান্তে ডিফল্ট ডেটা বরাদ্দ করা আছে। উপরে বর্ণিত যেকোন পদ্ধতি ব্যবহার করে, বিকাশকারীরা সেট করতে পারেন ডিফল্ট মান struct ক্ষেত্র দক্ষতার সাথে.