Показать сообщение отдельно
Старый 09.04.2011, 17:33
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 5  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Ну собственно, по семантике, функция отличается от процедуры тем, что что-то возвращает (поэтому есть обязательный возвращаемый тип, и если не нужно возвращать ничего, то возвращают undefined, т.е. экземпляр класса void). Когда функция компилируется, у нее всегда в конце есть опкод, который должен вернуть что-то. Либо значение заданое пользователем, либо, если ничего не задано, то вернет undefined (void).
T.o. елси мы сами чего-то вернем, то не будет "ненужного" кода для возврата "ничего".
На сколько я до сегодняшнего дня представлял себе устройство стека, то у него есть своя "отдельная" память. Но я так же думал, что выделяется она динамически, а ограничение делается не на размер занятой памяти, а на количество вхождений. Т.е. не важно, что функция которая на стеке делает, и сколько памяти занимает, если сказано, что размер стека = 100 вызовов, значит 100. А оказывается, что нет...
__________________
Hell is the possibility of sanity