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

C++-এ ভেক্টর কপি করার উপায় (Ways to copy a vector in C++)

ভেক্টর কপি করার ৫টি পদ্ধতি

১. std::copy + back_inserter

vector<int> v1 = {7,6,4,5}, v2;
copy(v1.begin(), v1.end(), back_inserter(v2));

২. assign() মেথড

vector<int> v2;
v2.assign(v1.begin(), v1.end());

৩. অ্যাসাইনমেন্ট অপারেটর (=)

vector<int> v2 = v1; // বা v2 = v1;

৪. push_back() লুপ

vector<int> v2;
for (int x : v1) v2.push_back(x);

৫. কনস্ট্রাক্টর দিয়ে কপি

vector<int> v2(v1); // কপি কনস্ট্রাক্টর

পারফরম্যান্স এবং সুপারিশ

  • অ্যাসাইনমেন্ট (=) বা কপি কনস্ট্রাক্টর: সবচেয়ে পঠনযোগ্য এবং সাধারণত অপ্টিমাইজড (move semantics C++11-এ)।
  • assign(): বিদ্যমান ভেক্টরকে নতুন কনটেন্ট দিয়ে রিপ্লেস করার জন্য।
  • std::copy: جزিয়েটর রেঞ্জ কপি করার জন্য ফ্লেক্সিবল।
  • push_back লুপ: ধীর (রি-অ্যালোকেশন হতে পারে), reserve() ব্যবহার করলে ভালো।

সর্বোত্তম প্র্যাকটিস: v2 = v1; বা vector<int> v2(v1);।

  1. C++-এ কনস্ট্রাক্টরে ভেক্টর পাস করা (Passing a vector to constructor in C++)

  2. C++-এ vector::resize() বনাম vector::reserve() পার্থক্য

  3. C++-এ টাইপ ইনফারেন্স (Type Inference)

  4. C++-এ কপি কনস্ট্রাক্টর