Дороговкази в delphi-програмах

Дороговкази в Delphi-програмах

Хто-небудь зможе мені пояснити, навіщо потрібні покажчики в Delphi-програми? Точніше, приведіть, будь ласка, приклади, коли без покажчиків взагалі не обійтися або вони в сто разів ефективніше будь-яких інших альтернатив.

P.S. Навіщо в деяких програмах існують покажчики на покажчики ??

> Приклади, коли без покажчиків взагалі не обійтися
class

> P.S. Навіщо в деяких програмах існують покажчики на покажчики ??
щоб мати можливість змінювати значення покажчика, а не вмісту.

Win API чисті покажчики

Покажчики є завжди і всюди і без них немає нічого. Просто в сучасних інтерпретованих недоязиках недопрограммірованія через патологічної боязні "небезпечного коду" немає таких речей, щоб покажчики були в чистому вигляді. А якщо припре там є посилання, які є тими ж покажчики.

> Навіщо в деяких програмах існують покажчики на покажчики ??

Покажчик - це така ж мінлива, як і інші. Часто потрібен ще один рівень посилальними. Припустимо, відомо, що покажчик A посилається на якийсь блок даних. Якщо покажчик B буде посилатися на A, то можна в якийсь момент поміняти вміст покажчика A. При цьому B не постраждає - в потрібний момент, перейшовши за двома вказівниками, ми отримаємо актуальні дані. Більш того, іноді потрібно третій рівень - покажчик на покажчик на покажчик)
Ще в WinAPI місцями використовується (і взагалі в сішних програмах постійно) для доступу до масивів і т.д.


> Просто в сучасних інтерпретованих недоязиках недопрограммірованія
> Через патологічної боязні "небезпечного коду" немає таких речей,
> # XA0; щоб покажчики були в чистому вигляді.

Це в яких же? )


> І я б не наважився JS назвати недоязиком

Я тут чув на ньому навіть декодер H264 написали. Правда не вручну а за допомогою якогось конвертора з C. Працює, але медлееенннооо. І код страшний.


> Приклади, коли без покажчиків взагалі не обійтися

списки, дерева.

Спокійно робляться без покажчиків.

Наприклад класові змінні, записи. Все, що не pointer


> [14]

класові змінні - ті ж покажчики, так нецікаво.

> [15]
> Масив і індекси.

і городити всередині цього масиву власні аллокатор і збирач сміття?

Не треба пересмикувати, йшлося про тип Покажчик в ЯВУ, а класові
змінні це контрольований тип даних

Jambo, якщо відповідати коротко, то для того, щоб писати простіше.
Так само як іноді 1 масив зручніше 100 змінних.


> Хто-небудь зможе мені пояснити, навіщо потрібні покажчики в
> Delphi-програми? Точніше, приведіть, будь ласка, приклади,
> # XA0; коли без покажчиків взагалі не обійтися або вони в сто
> Разів ефективніше будь-яких інших альтернатив.


> А тепер візьмемо NET. Який ставить хрест на всіх 3 пунктах.

на простоті, оптимальності і економічності. )


> На простоті, оптимальності і економічності. )

Схожі статті