Шрифт:
При увеличении размера блока памяти
В любом случае вы можете предположить, что если
Возможно, вы заметили, что в нашем примере для указания на измененный блок памяти использовалась отдельная переменная. Можно было бы (хотя это плохая идея) использовать ту же самую переменную, как здесь:
Это плохо по следующей причине. Когда
Для версии
Вот другой довольно тонкий момент [42] . Рассмотрим процедуру, которая содержит статический указатель на динамически выделяемые данные, которые время от времени должны расти. Процедура может содержать также автоматические (т.е. локальные) указатели на эти данные. (Для краткости, мы опустим проверки ошибок. В коде продукта не делайте этого.) Например:
42
Он получен от реальной практики работы с
Это выглядит просто;
В строке, помеченной '