logo search
ООП для Заоч / Пинчук Лозовская Программир на С

Void main()

{ const double* pe= new const double(2.718282);

// створення динамічного константного об’єкту

printf("*pe=%f \n",*pe);

*p= 5.555555; // Помилка! Константний об'єкт не може // бути модифікований

delete p;

}

Динамічні масиви

Операція створення одновимірного динамічного масиву записується в такий спосіб:

тип * a = new тип[N];

Тут a - покажчик, що далі може бути використаний як ім'я масиву, тип - тип елементів масиву, N - число елементів масиву. Дуже важливим моментом є те, що число елементів масиву N може бути представлено змінною або навіть виразом. Останнє дає можливість створювати масиви із наперед невідомою кількістю елементів, яка може визначатися в процесі виконання програми.

Для запису операції видалення динамічного масиву використовується операція delete[] :

delete[] адреса;

Тут адреса - адреса масиву, що видаляється.

Нижче наводиться фрагмент програми, у якій створюється, а потім знищується числовий динамічний масив a типу long.

int N = 100;

long* a= new long[N]; // тут N - не константа

.....................

delete[] a;

Нижче наведено корисну програму, у якій обробка виключення, що породжується операцією new, використовується для визначення розміру вільної області віртуальної пам'яті комп'ютера.

// Приклад 2.

#include <new.h>

#include <syst.h>