В чем разница между между let в swift и const в c++


#1

Добрый вечер товарищи, может кто сможет подсказать, в чем разница между let и const, мне вот стало очень интересно после того как я посыпался на этом вопросе!

Пока что нашел, это разницу в js let от const

Час поздний, может кто на ходу знает, а если нет, то завтра буду искать дальше и так проверять))

Всем спасибо


#2

Swift - let это константа, var переменная.
JavaScript - let это переменная, const константа, var переменная с ненормальной областью видимости.
Go - var переменная, const константа, но константы можно объявлять только с простыми типами int/string/bool/etc, для всего остального переменные.
В C++ - не знаю и интересно как собаке пятая нога.

Вы шли на позицию C++ разработчика?


#3

Нет, на swift)

в swift в инициализаторе мы спокойно можем инициализировать константу, а вот в плюсах с этим возникают проблемы, но все решается блогадаря списку инициализации

++ больше свободы, в плане, от расположения const зависит что является константой ссылка или значение

Может кто знает еще разницу?!)


#4

Список инициализации это очередной костыль из C++, придумали его потому что нельзя в заголовке объявлять и инициализировать переменные одновременно, если он что то ещё решает, это побочный эффект. К константам он никакого отношения не имеет, так же как C++ к разработке на Swift и iOS.