এই আর্টিকেলে আমরা C++-এ remove() ফাংশনের কাজ, সিনট্যাক্স এবং উদাহরণ নিয়ে আলোচনা করব।
STL-এ List কী
List একটি ডেটা স্ট্রাকচার যা সিকোয়েন্সে যেকোনো জায়গায় কনস্ট্যান্ট টাইমে ইনসারশন এবং ডিলিশন করার সুবিধা দেয়। লিস্টগুলো ডাবলি লিংকড লিস্ট হিসেবে ইমপ্লিমেন্টেড। লিস্ট নন-কন্টিগ্যুয়াস মেমরি অ্যালোকেশন অনুমতি দেয়। লিস্ট অ্যarray, vector এবং deque-র চেয়ে যেকোনো পজিশনে এলিমেন্ট ইনসার্ট, এক্সট্র্যাক্ট এবং মুভ করার ক্ষেত্রে ভালো পারফর্ম করে। লিস্টে এলিমেন্টে ডায়রেক্ট অ্যাক্সেস ধীর এবং লিস্ট forward_list-এর সাথে মিলتی-जুলتی, কিন্তু forward list অবজেক্টগুলো সিঙ্গলি লিংকড লিস্ট এবং সেগুলো শুধু ফরওয়ার্ডে ইটারেট করা যায়।
remove() কী
remove() C++ STL-এ একটি বিল্ট-ইন ফাংশন যা হেডার ফাইলে ডিক্লেয়ার করা আছে। remove() লিস্ট কন্টেইনারের থেকে যেকোনো নির্দিষ্ট ভ্যালু/এলিমেন্ট রিমুভ করতে ব্যবহৃত হয়। এটি প্যারামিটার হিসেবে پاس করা ভ্যালুটা নেয় এবং লিস্ট কন্টেইনারের থেকে সেই ভ্যালুর সব এলিমেন্ট রিমুভ করে। যদি রিমুভ করা এলিমেন্টের আকার লিস্ট কন্টেইনারের চেয়ে বড় হয় তবে ফাংশন ডস্ট্রাক্টর কল করে।
সিনট্যাক্স
list_name.remove(const value_type& value);
এই ফাংশন একটি ভ্যালু গ্রহণ করে যা লিস্ট কন্টেইনারের থেকে সার্চ করে রিমুভ করা হবে।
রিটার্ন ভ্যালু
এই ফাংশন কিছু রিটার্ন করে না, শুধু কন্টেইনারের থেকে এলিমেন্ট রিমুভ করে।
উদাহরণ
/* In the code below we are inserting elements to the list and then we will try to remove the elements from the list using their values. */ #include <bits/stdc++.h> using namespace std; int main(){ //create a list list<int> myList; //insert elements to the List myList.push_back(1); myList.push_back(1); myList.push_back(3); myList.push_back(2); myList.push_back(5); //my list before removing elements cout<<"List before removing elements: "; for (auto i = myList.begin(); i!=myList.end(); i++){ cout << *i << " "; } //deleting 1 2 and 3 from the list myList.remove(1); myList.remove(2); myList.remove(3); // List after removing elements cout << "\nList after removing elements: "; for (auto i = myList.begin(); i!= myList.end(); i++){ cout << *i << " "; } return 0; }আউটপুট
যদি উপরের কোডটি রান করানো হয় তবে নিচের আউটপুট জেনারেট হবে:
List before removing elements: 1 1 3 2 5 List after removing elements: 5