константні покажчики

Константні покажчики, покажчики-константи і покажчики на константи

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

Використання константних вказівників дозволяє значно убезпечити роботу. Наприклад, якщо ми використовуємо функцію, і вона приймає константних покажчик, то ми впевнені, що вона не змінить наші дані.

Коли ми бачимо код програми, у нас є можливість дізнатися, чи змінюються передані аргументи чи ні. Але це вже вимагає часу. Якщо ми користуємося чужими бібліотеками, то у нас є доступ тільки до документації або до h-файлів.

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

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

Можна комбінувати, і створити константних покажчик константу. Можливо, це коли-небудь стане в нагоді.

Можна також зберігати покажчик константи. Так як це константа, то необхідно, щоб покажчик теж був сталою.

Ну і самий страшний приклад: константних покажчик константа на константу. Область застосування: сферичне програмування в вакуумі.

Зауважте, const char * p і char const * p нічим не відрізняються. Будь-яких умов, коли як писати далі робити не будемо.

ru-Cyrl 18- tutorial Sypachev S.S. 1989-04-14 [email protected] Stepan Sypachev students

Схожі статті