alloca () хорош и эффективен ... но он также сильно нарушен.
В большинстве случаев вы можете заменить его, используя локальные переменные и размер мажоранты. Если он используется для больших объектов, их размещение в куче обычно является более безопасной идеей.
Если вам это действительно нужно, вы можете использовать VLA (нет vla на C ++, слишком плохо). Они намного лучше, чем alloca () относительно поведения и согласованности области. Как я вижу, VLA - это своего рода alloca (), сделанный правильно.
Конечно, локальная структура или массив с использованием мажоранты требуемого пространства все же лучше, и если у вас нет такого распределения кучи мажоранты с использованием простого malloc (), вероятно, разумно. Я не вижу здравого смысла, когда вам действительно нужно либо alloca (), либо VLA.
Я бы сначала выбрал все элементы в DOM, т. Е.
var myIdIWant = document.getElementById('someid')
, вместо того, чтобы набирать то, что выше, я мог бы сказать что-то вроде myIdIwant.style.display = 'none'
, и кажется, что у вас есть много висящих других там можно использовать операторы if / else вместо
if(foo) {
//do something
}
elseif(bar) {
//do something
}
else{}
Вы также можете изучить операторы switch для очистки длинных строк логики, они позволяют выполнять операции, основанные на множестве различных состояний, подобных этому
[112 ]