Рассмотрим действия со ссылочными переменными на следующей схеме. Пусть Q и R указывают на различные компоненты динамических переменных типа C:
C = record I: integer; P: point end;
Пусть в памяти машины размещены две цепочки динамических переменных. Выполним четыре различных операций: Q := R; Q^ := R^; Q^.I := R^.I; Q^.P := R^.P;
a) После выполнения оператора Q := R; переменная Q указывает на ту же динамическую переменную, что и R.
б) После выполнения оператора Q^ := R^; (из исходного состояния) получим, что на место указанной переменной “20”, указывающей на “30”, заслана переменная “15”, указывающая на “25”.
в) После выполнения оператора Q^.I := R^.I; из исходного состояния получим, что на место целого значения 20 заслано значение 15; поле указателя не изменилось.
г) После выполнения оператора Q^.P := R^.P; из исходного состояния получим, что на место ссылки на компоненту “30” заслана ссылка на компоненту “25”, поле целого значения не изменилось.
Последние комментарии
2 дня 5 часов назад
4 дня 18 часов назад
5 дней 16 часов назад
5 дней 19 часов назад
1 неделя 1 день назад
1 неделя 1 день назад
1 неделя 5 дней назад
2 недели 1 день назад
2 недели 1 день назад
2 недели 2 дня назад