Konstruktorlar va kuzda tutilgan qiymatlar
Konstruktorlarda kuzda tutilgan qiymatlardan ham foydalanish mumkindir. Misol uchun qo’yidagi konstruktor employee oklad qiymatini dasturda ko’rsatilmagan bo’lsa 10000.0 teng qilib oladi.:
employee::employee(char *name, long employee_id, float salary = 10000.00)
{
strcpy(employee::name, name);
employee::employee_id = employee_id;
if (salary < 50000.0)
employee::salary = salary;
else // Nedopustimihy oklad
employee::salary = 0.0;
Destruktorlar
Sinfning biror ob'ekti uchun ajratilgan hotira ob'ekt yo’qotilgandan so’ng bo’shatilishi lozimdir. Sinflarning mahsus komponentalari destruktorlar, bu vazifani avtomatik bajarish imkonini yaratadi.
Destruktorni standart shakli qo’yidagicha :
~ sinf_nomi ( ) {destruktor tanasi}
Destruktor parametri yoki qaytariluvchi qiymatga ega bo’lishi mumkin emas. (hatto void tipidagi)
Do'stlaringiz bilan baham: |