কনস্ট্রাক্টরদের প্রায়ই প্রয়োজনীয় সদস্য ফাংশন হিসাবে উল্লেখ করা হয় যা ক্লাস-টাইপ অবজেক্ট এবং স্ট্রাকচার শুরু করার জন্য ব্যবহৃত হয়। অন্যান্য প্রোগ্রামিং ভাষার মতো, C++ এও কনস্ট্রাক্টর ব্যবহার করা হয়। এটি কাঠামোর জন্য অপ্রচলিত বা অনির্ধারিত আচরণ এড়ানোর জন্য একটি নির্দিষ্ট পদ্ধতিতে বস্তু তৈরি করতে ব্যবহার করা হয়।
এই নির্দেশিকাটি সম্পর্কে বর্ণনা করবে:
- C++ এ "struct" কনস্ট্রাক্টর কি?
- C++ এ কনস্ট্রাক্টর সংজ্ঞায়িত করার জন্য মূল পয়েন্টগুলি
- C++ এ “struct” কন্সট্রাক্টরের সিনট্যাক্স
- C++ এ "struct" কন্সট্রাক্টরের কাজ
- C++ এ ডিফল্ট "struct" কনস্ট্রাক্টর
- C++ এ প্যারামিটারাইজড "struct" কনস্ট্রাক্টর
- সি++ এ স্ট্রাকচার কনস্ট্রাক্টরের জন্য কীভাবে পয়েন্টার তৈরি করবেন?
- নীচের লাইন
C++ এ, “struct ” একটি কাঠামো হিসাবে পরিচিত যা একটি কাঠামোর মধ্যে একটি বিশেষ ফাংশন সদস্য। "struct" কনস্ট্রাক্টরটি তার সদস্য ভেরিয়েবলগুলি শুরু করতে এবং ব্যবহারকারীদেরকে একটি একক জায়গায় মিশ্র ডেটা টাইপ সমন্বিত ভেরিয়েবলগুলির একটি নতুন গ্রুপ তৈরি করতে সক্ষম করতে ব্যবহৃত হয়। সহজ কথায়, “struct ” কনস্ট্রাক্টর হল একটি নির্দিষ্ট পদ্ধতি যা স্বয়ংক্রিয়ভাবে চালু হয় যখনই ব্যবহারকারীরা ক্লাসের জন্য কোনো বস্তু ঘোষণা করেন।
C++ এ কনস্ট্রাক্টর সংজ্ঞায়িত করার জন্য মূল পয়েন্ট
C++ এ কনস্ট্রাক্টর সংজ্ঞায়িত করার জন্য এখানে কিছু মূল পয়েন্ট রয়েছে:
- কনস্ট্রাক্টরের সর্বদা সেই ক্লাসের একই নাম থাকে যেটির এটি অংশ।
- যদি ব্যবহারকারীদের দ্বারা কনস্ট্রাক্টর প্রদান করা না হয়, তাহলে এটি একটি ডিফল্ট কনস্ট্রাক্টর তৈরি করবে।
- কনস্ট্রাক্টরগুলি ইনপুট/আউটপুট ক্রিয়াকলাপের পরিবর্তে শুরু করার জন্য ব্যবহৃত হয়।
- অপারেটরের সাহায্যে রান টাইমে মেমরি সনাক্ত করার জন্য ব্যবহার করা হয়।
- এটিকে ভার্চুয়াল এবং স্ট্যাটিক ঘোষণা করা যাবে না।
- ব্যবহারকারীরা একাধিক কনস্ট্রাক্টর ঘোষণা করতে পারে (এটি ওভারলোড হতে পারে)।
C++ এ "struct" কন্সট্রাক্টরের সিনট্যাক্স
আসুন struct কনস্ট্রাক্টরগুলির সাধারণ সিনট্যাক্স পরীক্ষা করে দেখি:
struct কাঠামো-নাম{
d_type পরিবর্তনশীল1;
d_type পরিবর্তনশীল2;
........
........
// পরামিতি কনস্ট্রাক্টর ছাড়া
গঠন-নাম()
{
//কোড
// প্যারামিটার কনস্ট্রাক্টর সহ
গঠন-নাম (d_type variable1, d_type variable2,..)
{
//কোড
};
উপরে বর্ণিত সিনট্যাক্স অনুসারে:
- “গঠন-নাম ” ব্যবহারকারীর পছন্দের কাঠামোর নামের সাথে প্রতিস্থাপিত হবে এবং এটিকে “struct দিয়ে সংজ্ঞায়িত করবে " কীওয়ার্ড৷ ৷
- “d_type variable1 ” বিভিন্ন ধরনের ডাটা সহ ভেরিয়েবলের নাম উপস্থাপন করে।
- তারপর, “স্ট্রাকচার-নাম() ” কনস্ট্রাক্টর একটি প্যারামিটার ছাড়াই সংজ্ঞায়িত করা হয়।
- পরবর্তী, প্যারামিটারাইজড কনস্ট্রাক্টরের সিনট্যাক্সও সংজ্ঞায়িত করা হয়েছে, যেমন “স্ট্রাকচার-নাম(d_type ভেরিয়েবল1,…) ” প্যারামিটারাইজড কনস্ট্রাক্টর প্রতিনিধিত্ব করে।
দ্রষ্টব্য :"struct" ঘোষণাটি C++ এ ক্লাসের ঘোষণার মতই।
C++ এ "struct" কন্সট্রাক্টরের কাজ
C++ এ, ব্যবহারকারীরা তাদের প্রয়োজনীয়তা অনুযায়ী প্যারামিটার ছাড়া বা সহ struct কনস্ট্রাক্টর ব্যবহার করতে পারেন। আসুন আরও ভাল বোঝার জন্য নিম্নলিখিত কোড প্রদর্শনী পরীক্ষা করে দেখি।
C++ এ ডিফল্ট "struct" কন্সট্রাক্টর তৈরি করুন
C++ এ একটি ডিফল্ট struct কনস্ট্রাক্টর তৈরি করতে, নিম্নলিখিত কোড ব্লকটি দেখুন:
# অন্তর্ভুক্ত করুন
নামস্থান std;
struct লোক{
স্ট্রিং নাম;
ভাসমান উচ্চতা;
int বয়স;
লোক(){
নাম ="ডেভিড";
উচ্চতা =6.7;
বয়স =26;
cout<<"নাম:"<<নাম<
};
int main()
{
folk();
উপরে প্রদত্ত কোড ব্লকে:
- প্রথমে, আমরা “# অন্তর্ভুক্ত
” যোগ করেছি হেডার ফাইল হিসেবে ইনপুট/আউটপুট স্ট্রিম লাইব্রেরি। - এর পরে, "using namespace std" ব্যবহার করা হয়েছে৷ স্ট্যান্ডার্ড লাইব্রেরি শনাক্তকারীর ব্যবহার সক্ষম করতে।
- পরে, আমরা “folk()” তৈরি করেছি বিভিন্ন ডাটা টাইপ সহ তিনটি সদস্যের কাঠামো, যেমন “নাম ” স্ট্রিং হিসাবে, “উচ্চতা " ভাসা হিসাবে, এবং "বয়স৷ ” যথাক্রমে একটি পূর্ণসংখ্যার ধরন হিসাবে।
- তারপর, স্ট্রাকচারের জন্য কনস্ট্রাক্টর যোগ করুন এবং সদস্যদের নিজ নিজ মান দিয়ে শুরু করুন। কনস্ট্রাক্টর বডির ভিতরে, আমরা লোক কাঠামোর ডেটা সংজ্ঞায়িত করেছি এবং “cout ব্যবহার করেছি কনসোলে ফলাফল দেখানোর জন্য বিবৃতি।
আউটপুট
C++ এ প্যারামিটারাইজড "struct" কনস্ট্রাক্টর তৈরি করুন
C++ এ প্যারামিটারাইজড কনস্ট্রাক্টর তৈরি করার জন্য, নিচের কোডটি ব্যবহার করে দেখুন:
# অন্তর্ভুক্ত করুন
নামস্থান std;
struct লোক{
স্ট্রিং নাম;
ভাসমান উচ্চতা;
int বয়স;
folk(স্ট্রিং x, float y, int z){
নাম =x;
উচ্চতা =y;
বয়স =z;
}
};
int main()
{
folk f1("Ayzel", 5.1, 23);
cout<<"নাম:" <
এখানে:
- আমরা পূর্বে আলোচিত উদাহরণটি প্রসারিত করেছি এবং ভেরিয়েবলগুলিকে তাদের নিজ নিজ ডেটা প্রকারের সাথে প্যারামিটার হিসাবে কনস্ট্রাক্টরের কাছে পাস করেছি, যেমন “x " একটি স্ট্রিং হিসাবে, "y৷ " একটি ভাসা হিসাবে, এবং "z৷ একটি পূর্ণসংখ্যা হিসাবে।
- শেষে, “main()-এর ভিতরে ” ফাংশন আমরা “f1 নামে অবজেক্ট তৈরি করেছি ” এবং মান সহ কনস্ট্রাক্টরকে আহ্বান করেছে। তারপর, “cout ব্যবহার করুন৷ ” কনসোলে ভেরিয়েবলের ফলিত মান প্রিন্ট করার স্টেটমেন্ট।
আউটপুট

সি++ এ স্ট্রাকচার কনস্ট্রাক্টরের জন্য কীভাবে পয়েন্টার তৈরি করবেন?
একটি পয়েন্টার একটি পরিবর্তনশীল যা একটি বস্তুর মেমরি ঠিকানা সংরক্ষণ করার জন্য ব্যবহার করা হয়। C++ এ, পয়েন্টারগুলি একটি অ্যারের উপাদান বা অন্যান্য ডেটা স্ট্রাকচার এবং আরও অনেক উদ্দেশ্যে পুনরাবৃত্তি করার জন্যও ব্যবহৃত হয়। পয়েন্টার ভেরিয়েবলগুলিও ব্যবহারকারী-সংজ্ঞায়িত ধরনের কাঠামোর জন্য তৈরি করা হয়। আসুন স্ট্রাকচারের জন্য একটি পয়েন্টার তৈরি করার জন্য প্রদত্ত উদাহরণটি দেখুন:
# অন্তর্ভুক্ত করুন
# অন্তর্ভুক্ত
নামস্থান std;
struct লোক
{
স্ট্রিং নাম;
int বয়স;
};
int main(){
struct folk f ={"Elice", 28};
struct লোক *ptr;
ptr =&f;
cout <
উপরে-প্রদত্ত কোডে:
- আমরা “
” যোগ করেছি এবং “” হেডার ফাইল। - তারপরে, "নামস্থান std ব্যবহার করে" নির্দিষ্ট করুন৷ স্ট্যান্ডার্ড লাইব্রেরি শনাক্তকারীর ব্যবহার সক্ষম করতে।
- এরপর, আমরা “folk()” তৈরি করেছি বিভিন্ন ডাটা টাইপ সহ দুটি সদস্যের গঠন, যেমন “নাম " একটি স্ট্রিং হিসাবে, এবং "বয়স৷ ” যথাক্রমে একটি পূর্ণসংখ্যার ধরন হিসাবে।
- পরে, আমরা একটি পয়েন্টার সংজ্ঞায়িত করেছি “ptr " এর কাছে "লোক "কাঠামো।
- এখন, আমরা একটি পয়েন্টার তৈরি করেছি “ptr " "f নির্দেশ করার জন্য৷ গঠন পরিবর্তনশীল। ফলস্বরূপ, “ptr ” এখন স্ট্রাকচার ভেরিয়েবলের ঠিকানা সংরক্ষণ করে “f ”।
- শেষে, আমরা “-> ব্যবহার করেছি ” অপারেটর সেই কাঠামোর একটি পয়েন্টার ব্যবহার করে একটি কাঠামোর কাঠামোর সদস্যদের ডেটা অ্যাক্সেস করতে৷
এখানে উপরে বর্ণিত কোডের আউটপুট:

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