Почему пишут такое:
void* pop () {
if (head == 0) {
return 0;
}
void* result = head->data;
LinkVoid* oldHead = head;
head = head->next;
delete oldHead;
return result;
}
вместо такого:
void* pop () {
void* result = nullptr;
if (head != 0) {
void* result = head->data;
LinkVoid* oldHead = head;
head = head->next;
delete oldHead;
}
return result;
}
Где-то в учебнике Дейтла рассказывалось, как структурное программирование позволило избавиться от лапши в стиле goto. Но в учебники по java Лафоре автор постоянно забивает на это. То есть это не очень важно и не очень нужно на самом деле? Или это чисто вопрос личных предпочтений? Или это такая оптимизация?