`a

`auto` মধ্যে C++

১টি অনুশীলনী

`auto` সম্পর্কে

C++-এ auto কিওয়ার্ড

C++-এ auto কিওয়ার্ডটি C++11-এ যুক্ত একটি শক্তিশালী ফিচার, যা দিয়ে অনুমিত ডেটা টাইপের ভ্যারিয়েবল ডিক্লেয়ার করা যায়। কম্পাইলার ইনিশিয়ালাইজারের ভিত্তিতে ভ্যারিয়েবলটির টাইপ অনুমান করে, ফলে কোড আরও পাঠযোগ্য ও রক্ষণাবেক্ষণযোগ্য হয়ে ওঠে।

ব্যবহারের উদাহরণ

নিচের উদাহরণটি দেখুন, যেখানে auto দিয়ে ভ্যারিয়েবল ডিক্লেয়ার করা হয়েছে:

auto dragon_population{3};          // dragon_population is deduced as an integer
auto westeros{7.7777};              // westeros is deduced as a double
auto wedding_location{"The Twins"}; // wedding_location is deduced as a const char*, not std::string

প্রতিটি ক্ষেত্রেই ভ্যারিয়েবলটির টাইপ তার ইনিশিয়ালাইজ করা মান থেকে অনুমান করা হয়।

টাইপ ইনফারেন্স

স্পষ্ট টাইপ লেখার বাহুল্য কমিয়ে auto কিওয়ার্ডটি আরও সংক্ষিপ্ত ও পাঠযোগ্য কোড লিখতে সাহায্য করে।

const std::vector<std::string> pigeon_pie{"flour", "butter", "pigeon", "salt"};
auto purple_wedding_pie{pigeon_pie};
purple_wedding_pie.emplace_back("the strangler");

এই লুপে auto purple_wedding_pie-এর টাইপ std::vector<std::string> হিসেবে অনুমান করে, ফলে টাইপটি আবার স্পষ্টভাবে উল্লেখ করার দরকার পড়ে না।

সামঞ্জস্য

auto কিওয়ার্ডটি C++-এর নানা কনস্ট্রাক্টের সাথে সামঞ্জস্যপূর্ণ, যা এটিকে আধুনিক C++ প্রোগ্রামিংয়ে একটি বহুমুখী হাতিয়ার করে তোলে।

auto& element{array[0]};           // reference to an element
const auto object{otherObject};    // const type version of otherObject's type
auto* ptr{&x};                     // pointer to x with the same type as x, but as a pointer.

পরের কোনো কনসেপ্টে আমরা প্রায়ই auto কিওয়ার্ডটি ল্যাম্বডা এক্সপ্রেশন, রেঞ্জ-ভিত্তিক for লুপ আর ইটারেটরের সাথে দেখতে পাব।

ব্যবহারের ক্ষেত্র

  • জেনেরিক প্রোগ্রামিং: যেসব ক্ষেত্রে টাইপ জটিল বা টেমপ্লেট-সম্পর্কিত হতে পারে, সেখানে auto বিশেষভাবে কাজে লাগে।
  • জটিল ডেটা টাইপ: জটিল ডেটা টাইপ বা লম্বা টাইপের নাম নিয়ে কাজ করার সময় auto কোডের জঞ্জাল কমায় এবং রক্ষণাবেক্ষণযোগ্যতা বাড়ায়।
  • ইটারেটর-ভিত্তিক অ্যালগরিদম: এটি অ্যালগরিদমে ইটারেটর ব্যবহার সহজ করে এবং কোডের পাঠযোগ্যতা বাড়ায়।
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি নতুন একটি উইন্ডো বা ট্যাবে খুলবে

`auto` শিখুন

অনুশীলন লক করা আছে

`auto` অনুশীলন করতে আরও ১টি অনুশীলনী আনলক করুন