C++ Constructor Initialization List Curly Braces Vs Parentheses

4 min read Jul 01, 2024
C++ Constructor Initialization List Curly Braces Vs Parentheses

C++ Constructor Initialization List: Curly Braces vs Parentheses

Dalam C++, constructor digunakan untuk menginisialisasi objek saat objek dibuat. Salah satu cara untuk menginisialisasi anggota data dalam constructor adalah dengan menggunakan constructor initialization list. Constructor initialization list dituliskan setelah nama constructor, diawali dengan titik dua (':') dan diikuti oleh daftar anggota data dan nilai yang akan diberikan kepada mereka.

Ada dua cara untuk menuliskan constructor initialization list: dengan curly braces ({}) atau dengan parentheses (()). Artikel ini akan membahas perbedaan antara kedua cara tersebut dan kapan sebaiknya menggunakan masing-masing.

Menggunakan Curly Braces

Memasukkan nilai ke anggota data melalui curly braces adalah cara yang lebih modern dan disarankan oleh banyak programmer C++.

Contoh:

class MyClass {
public:
    MyClass(int a, int b) : x(a), y(b) {} // Constructor initialization list dengan curly braces
private:
    int x;
    int y;
};

Dalam contoh ini, constructor MyClass menerima dua parameter, a dan b. Constructor initialization list : x(a), y(b) menginisialisasi anggota data x dengan nilai a dan y dengan nilai b.

Menggunakan Parentheses

Memasukkan nilai ke anggota data melalui parentheses adalah cara yang lebih tradisional, tetapi mungkin kurang disarankan saat ini.

Contoh:

class MyClass {
public:
    MyClass(int a, int b) : x(a), y(b) {} // Constructor initialization list dengan parentheses
private:
    int x;
    int y;
};

Dalam contoh ini, constructor MyClass menerima dua parameter, a dan b. Constructor initialization list : x(a), y(b) menginisialisasi anggota data x dengan nilai a dan y dengan nilai b.

Perbedaan Curly Braces dan Parentheses

  • Ketentuan: Curly braces merupakan cara yang lebih modern dan disarankan, sedangkan parentheses adalah cara yang lebih tradisional.
  • Fungsionalitas: Kedua cara tersebut menghasilkan output yang sama, tetapi curly braces umumnya dianggap lebih efisien.
  • Kode: Curly braces membuat kode lebih mudah dibaca dan dipahami.

Kapan Menggunakan Curly Braces vs Parentheses

  • Curly Braces: Gunakan curly braces untuk menginisialisasi anggota data di dalam constructor initialization list.
  • Parentheses: Meskipun parentheses masih berfungsi, umumnya disarankan untuk menghindari penggunaan parentheses untuk constructor initialization list.

Kesimpulan

Meskipun kedua cara tersebut menghasilkan output yang sama, penggunaan curly braces untuk constructor initialization list disarankan karena lebih modern, efisien, dan membuat kode lebih mudah dibaca.