1. Mengidentifikasi kegunaan konstruksi.
Setiap suatu objek dibuat, maka sejumlah memori akan dialokasikan untuk objek tersebut. Tetapi proses pengalokasian memori tidak melakukan inisialisasi terhadap variabel yang terdapat pada objek yang dibuat. Variabel yang terdapat dalam suatu class tidak dapat diinisialisasi pada saat pendeklarasian. Penginisialisasian variabel seperti dibawah ini tidak dapat dilakukan:
class Calculator
{
int number1 = 10;
int number2 = 20;
}
{
int number1 = 10;
int number2 = 20;
}
Hal ini dapat dipecahkan dengan membuat fungsi untuk menginisialisasi harga awal (initial value) setiap variabel. Fungsi ini kemudian dapat dipanggil segera setelah objek dibuat.
#include <iostream>
using namespace std;
class Calculator
{
private:
int number1, number2, tot;
public:
void initialize()
{
number1 = 10;
number2 = 20;
}
void add()
{
tot = number1 + number2;
} void display()
{
cout << “The total is ” << tot << endl;
}
};
int main() {
Calculator c;
c.initialize();
c.add();
c.display();
return 0;
}
using namespace std;
class Calculator
{
private:
int number1, number2, tot;
public:
void initialize()
{
number1 = 10;
number2 = 20;
}
void add()
{
tot = number1 + number2;
} void display()
{
cout << “The total is ” << tot << endl;
}
};
int main() {
Calculator c;
c.initialize();
c.add();
c.display();
return 0;
}
2. Mendeklarasikan konstruksi.
Untuk memecahkan masalah pada program sebelumnya, C++ memungkinkan pembuatan suatu fungsi khusus di dalam class yang akan selalu dijalankan setiap kali suatu objek dari class tersebut dibuat. Fungsi ini disebut konstruksi. Konstruksi adalah member function dari suatu class yang akan dipanggil setiap suatu instance dari class yang mendeklarasikan konstruksi tersebut dibuat. Yang membedakan konstruksi dengan member function yang lain adalah konstruksi memiliki nama yang sama dengan nama class yang mendeklarasikannya. Dalam mendeklarasikan konstruksi tidak perlu menspesifikasikan tipe nilai kembalian (return value) karena konstruksi tidak mengembalikan nilai.
#include <iostream>
using namespace std;
class Calculator
{
private:
int number1, number2, tot;
public:
Calculator()
{
number1 = 10;
number2 = 20;
cout << “Constructor invoked\n”;
}
void add()
{ tot = number1 + number2;
}
void display()
{
cout << “The total is ” << tot;
}
};
int main()
{
Calculator c;
c.add();
c.display();
return 0;
}
using namespace std;
class Calculator
{
private:
int number1, number2, tot;
public:
Calculator()
{
number1 = 10;
number2 = 20;
cout << “Constructor invoked\n”;
}
void add()
{ tot = number1 + number2;
}
void display()
{
cout << “The total is ” << tot;
}
};
int main()
{
Calculator c;
c.add();
c.display();
return 0;
}
No comments:
Post a Comment