C++ Append Array To Vector

4 min read Jul 05, 2024
C++ Append Array To Vector

Menambahkan Array ke Vector dalam C++

Dalam pemrograman C++, seringkali kita perlu menggabungkan elemen-elemen dari sebuah array ke dalam sebuah vector. Ada beberapa metode yang dapat digunakan untuk mencapai hal ini, berikut penjelasannya:

1. Menggunakan std::copy()

Metode ini memanfaatkan fungsi std::copy() dari library <algorithm> untuk menyalin elemen-elemen array ke dalam vector.

Kode:

#include 
#include 
#include 

int main() {
  int arr[] = {1, 2, 3, 4, 5};
  int size = sizeof(arr) / sizeof(arr[0]);

  std::vector vec;

  // Salin elemen-elemen array ke dalam vector
  std::copy(arr, arr + size, std::back_inserter(vec));

  // Menampilkan isi vector
  for (int i = 0; i < vec.size(); i++) {
    std::cout << vec[i] << " ";
  }
  std::cout << std::endl;

  return 0;
}

Penjelasan:

  • std::copy(arr, arr + size, std::back_inserter(vec));
    • arr: Pointer ke elemen pertama dari array.
    • arr + size: Pointer ke elemen terakhir dari array.
    • std::back_inserter(vec): Menambahkan elemen baru ke akhir vector.

2. Menggunakan Loop

Metode ini menggunakan loop for untuk menambahkan elemen-elemen array ke dalam vector secara manual.

Kode:

#include 
#include 

int main() {
  int arr[] = {1, 2, 3, 4, 5};
  int size = sizeof(arr) / sizeof(arr[0]);

  std::vector vec;

  // Menambahkan elemen-elemen array ke dalam vector
  for (int i = 0; i < size; i++) {
    vec.push_back(arr[i]);
  }

  // Menampilkan isi vector
  for (int i = 0; i < vec.size(); i++) {
    std::cout << vec[i] << " ";
  }
  std::cout << std::endl;

  return 0;
}

Penjelasan:

  • vec.push_back(arr[i]): Menambahkan elemen arr[i] ke akhir vector.

3. Menggunakan Initializer List

Metode ini menggunakan initializer list untuk menambahkan elemen-elemen array ke dalam vector saat inisialisasi vector.

Kode:

#include 
#include 

int main() {
  int arr[] = {1, 2, 3, 4, 5};
  int size = sizeof(arr) / sizeof(arr[0]);

  std::vector vec(arr, arr + size);

  // Menampilkan isi vector
  for (int i = 0; i < vec.size(); i++) {
    std::cout << vec[i] << " ";
  }
  std::cout << std::endl;

  return 0;
}

Penjelasan:

  • std::vector<int> vec(arr, arr + size);: Menginisialisasi vector dengan elemen-elemen array dari arr hingga arr + size.

Kesimpulan

Ketiga metode di atas dapat digunakan untuk menambahkan array ke vector dalam C++. Pilih metode yang paling sesuai dengan kebutuhan Anda. Ingatlah bahwa metode std::copy() adalah metode yang lebih efisien karena menggunakan iterator, sedangkan metode loop dan initializer list mungkin lebih mudah dipahami dan diterapkan.

Latest Posts