Вы можете использовать time
и подоболочку ()
:
time (
for (( i=1; i<10000; i++ )); do
echo 1 >/dev/null
done
)
Или в одной оболочке {}
:
time {
for (( i=1; i<10000; i++ )); do
echo 1 >/dev/null
done
}
Если заголовок включен более чем в один исходный файл и функция не помечена как «встроенная», у вас будет несколько определений. Защита включения предотвращает только множественное включение в один и тот же исходный файл.
Вы нарушаете правило одного определения . Если вы хотите определить функцию непосредственно в заголовке, вы должны пометить ее как inline
- это позволит определять функцию несколько раз. Также обратите внимание, что inline
не имеет другого значения, в частности, не имеет '
Поскольку он не является встроенным, каждая единица трансляции будет иметь свою собственную копию функции, в результате чего функция будет определяться несколько раз.