Ну, главное отличие в том, что во втором примере Null_Proc
недоступен за пределами Lowest_Level
. В первом примере, если вы захотите позже, у вас может быть KOR618
или любая другая подпрограмма, которую вы можете добавить позже, также вызовите Null_Proc
.
Обычно я не определяю подпрограммы внутри других подпрограмм подобным образом, если только нет какой-либо причины, почему внутренняя подпрограмма не имеет смысла вне внешней подпрограммы. Очевидным примером может быть, если внутренняя подпрограмма работает с локальными переменными, объявленными во внешней подпрограмме (без передачи их в качестве параметров).
В этом случае Null_Proc - это такая же обычная операция, как и она, поэтому я не вижу никаких веских причин для ее уничтожения внутри Lowest_Level
таким образом. Конечно, он вообще ничего не делает, поэтому у меня нет никаких веских причин для его существования. : -)