{ 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>