কম্পিউটার টিউটোরিয়াল

C++ STL-এ forward_list::clear() এবং forward_list::erase_after() ফাংশন

এই নিবন্ধে আমরা C++ STL-এ forward_list::clear() এবং forward_list::erase_after() ফাংশনগুলির কাজকাজ, সিনট্যাক্স এবং উদাহরণ নিয়ে আলোচনা করব।

STL-এ Forward_list কী?

forward_list হল একটি সিকোয়েন্স কন্টেইনার যা সিকোয়েন্সের যেকোনো স্থানে কনস্ট্যান্ট টাইমে ইনসার্ট এবং ইরেজ অপারেশন করার অনুমতি দেয়। এটি সিঙ্গলি লিংকড লিস্ট হিসেবে বাস্তবায়িত হয়। প্রতিটি এলিমেন্টের পরবর্তী এলিমেন্টের সাথে লিংক থাকায় ক্রম বজায় থাকে।

forward_list::clear() কী?

forward_list::clear() হল C++ STL-এ একটি বিল্ট-ইন ফাংশন যা <forward_list> হেডার ফাইলে ঘোষিত। যখন আমাদের ফরওয়ার্ড লিস্টের সব এলিমেন্ট একসাথে মুছে ফেলতে হয়, তখন এই ফাংশনটি ব্যবহার করা হয়। এটি ফরওয়ার্ড লিস্টের সব এলিমেন্ট ধ্বংস করে এবং লিস্টের সাইজ শূন্য করে দেয়।

সিনট্যাক্স

flist_container1.clear();

প্যারামিটার

এই ফাংশন কোনো প্যারামিটার গ্রহণ করে না।

রিটার্ন মান

এই ফাংশন কিছুই রিটার্ন করে না।

উদাহরণ

Input: forward_list<int> forward = {1, 2, 3, 4}; forward.clear(); forward.size(); Output: 0

পূর্ণ কোড উদাহরণ

#include <forward_list> 
#include <iostream> 
using namespace std; 

int main() {
    forward_list<int> myList = { 10, 20, 30, 40 };
    myList.clear();
    for (auto i = myList.begin(); i != myList.end(); ++i)
        cout << ' ' << *i;
    cout << "List is cleared";
    return 0;
}

আউটপুট

উপরের কোড রান করলে নিচের আউটপুট পাওয়া যাবে:

List is cleared

forward_list::erase_after() কী?

forward_list::erase_after() হল C++ STL-এ একটি বিল্ট-ইন ফাংশন যা <forward_list> হেডার ফাইলে ঘোষিত। যখন আমরা ফরওয়ার্ড লিস্টে নির্দিষ্ট একটি পজিশনের পরের এলিমেন্ট(গুলো) মুছতে চাই, তখন এই ফাংশনটি ব্যবহার করা হয়। মুছে ফেলা এলিমেন্টের সংখ্যা 만큼 ফরওয়ার্ড লিস্টের সাইজ কমে যায়।

সিনট্যাক্স

flist_container1.erase_after(iterator position);

প্যারামিটার

এই ফাংশন একটি প্যারামিটার গ্রহণ করে যা সেই ইটারেটর পজিশন, যার পরের এলিমেন্ট(গুলো) মুছে ফেলতে হবে।

রিটার্ন মান

এই ফাংশন কিছুই রিটার্ন করে না।

উদাহরণ

Input: forward_list<int> forward = {1, 2, 3, 4}; forward.erase_after(iterator pointing to 2); Output: Forward list after erase_after() = 1 2 3

পূর্ণ কোড উদাহরণ

#include <forward_list> 
#include <iostream> 
using namespace std; 

int main() {
    forward_list<int> myList = { 10, 20, 30, 40, 50 };
    forward_list<int>::iterator i = myList.begin();
    myList.erase_after(i);
    cout << "Elements are : ";
    for (auto i = myList.begin(); i != myList.end(); ++i)
        cout << ' ' << *i;
    return 0;
}

আউটপুট

উপরের কোড রান করলে নিচের আউটপুট পাওয়া যাবে:

Elements are : 10 30 40 50
  1. C++ STL-এ List::clear() ফাংশন

  2. C++ STL-এ deque clear() এবং deque erase() ফাংশন

  3. C++ STL-এ forward_list emplace_after() এবং emplace_front() ফাংশন

  4. C++ STL-এ forward_list::cend() ফাংশন