время компиляции?
неа
Что может помешать?
что угодно. Const функции можно юзать в const контексте, при вызове в компайлтаймё они дадут тот же результат, чо и в рантаёймё. Больше никаких гарантий я не помню
То есть на этапе компиляции гарантированно выполнится только в константном контексте?
Угу. Каких-то гарантий по поводу обычного вызова я не видел. Вполне вероятно, что оно оптимизируется, но всё равно присутствие шанс налажать и передать не константу - компилятор не будет ругаться. С другой же стороны, передача неконстанты в константный контекст будет вызывать ошибку
оно чаще всего соптимизируется, но гарантий нет
Гарантий даже нет, что код корректен. Раст не проверяет это и никак об ошибке не уведомит, если не писать конст
Обсуждают сегодня