New (C++ оператор)

Од Википедија, слободната енциклопедија
Прејди на: содржини, барај

New е оператор во C++ програмскиот јазик, кој овозможува доделување на динамичка меморија во купот. Исклучок е таканаречената форма „placement new“, која овозможува да се додели меморија на купот за нови податоци и ако е успешно доделувањето ја враќа адресата на новата доделена меморија.

Синтакса[уреди]

Синтаксата за овој оператор е :

p_var = new typename;

Каде p_var е претходно објавен покажувач од типот на typename. Тypename може да биде кој било тип на основен податок или пак објект дефиниран од корисникот (enum, class и struct). Ако typename е од типот класа тогаш основниот конструктор е повикан да го изгради објектот.

Да се инсталира нова променлива со операторот new треба де се користи следнава синтакса:

p_var = new type(initializer);

Каде што initializer е почетната вредност доделена на новата променлива, или ако е од типот класа е аргументот на конструкторот.

New истотака може да создаде и низа:

p_var = new type [size];

Во овој случај size ја одредува должината на еднодимензионалната низа која сакаме да ја креираме. Адресата на првиот елемент е вратена и зачувана во p_var, па

p_var[n]

ја дава вредноста на n-тиот елемент (почнувајќи од нула).

Литература[уреди]