C++ Char Array To String_view

3 min read Jul 01, 2024
C++ Char Array To String_view

C++: Mengonversi Char Array ke String_View

Dalam C++, string_view adalah kelas yang efisien untuk merepresentasikan string yang tidak memiliki kepemilikan data. Ini berarti string_view tidak menyalin data string, melainkan menyimpan referensi ke data yang sudah ada. Hal ini membuatnya lebih efisien dalam penggunaan memori dan waktu, terutama saat bekerja dengan string yang besar.

Salah satu kegunaan string_view adalah mengonversi char array ke objek string_view. Berikut adalah cara melakukannya:

1. Menggunakan Constructor:

#include 

int main() {
  char charArray[] = "Hello, World!";
  std::string_view strView(charArray);

  std::cout << strView << std::endl; // Output: Hello, World!
}

Kode ini mendeklarasikan char array dan membuat objek string_view dengan constructornya, dengan charArray sebagai argumen.

2. Menggunakan Fungsi std::string_view::from():

#include 

int main() {
  char charArray[] = "Hello, World!";
  std::string_view strView = std::string_view::from(charArray);

  std::cout << strView << std::endl; // Output: Hello, World!
}

Kode ini juga mendeklarasikan char array dan membuat objek string_view dengan memanggil fungsi statis from(), yang mengambil char array sebagai argumen.

Keuntungan Menggunakan String_View:

  • Efisiensi Memori: string_view tidak menyalin data, sehingga mengurangi penggunaan memori, terutama untuk string besar.
  • Efisiensi Waktu: Mengoperasikan string_view lebih cepat daripada string biasa karena tidak perlu mengalokasikan atau dealokasikan memori.
  • Kode Lebih Bersih: Kode menjadi lebih bersih dan mudah dibaca karena string_view menghindari pembuatan salinan string yang tidak perlu.

Contoh Penggunaan:

#include 
#include 

int main() {
  char charArray[] = "Hello, World!";
  std::string_view strView(charArray);

  // Mengakses karakter pertama
  std::cout << "Karakter pertama: " << strView[0] << std::endl;

  // Menampilkan panjang string
  std::cout << "Panjang string: " << strView.length() << std::endl;

  // Membandingkan string
  std::cout << "Apakah string sama? " << (strView == "Hello, World!") << std::endl;

  return 0;
}

Kode ini menunjukkan beberapa cara dasar untuk menggunakan string_view setelah dikonversi dari char array.

Kesimpulan:

Menggunakan string_view untuk mengonversi char array di C++ memberikan keuntungan yang signifikan dalam efisiensi memori dan waktu. Ini adalah alternatif yang bagus untuk string biasa, terutama saat bekerja dengan string yang besar dan tidak memerlukan modifikasi data.

Latest Posts