170 похожих чатов

Давайте распутаем это. Что вы понимаете под переменными параметрами в данный

момент? Речь всё ещё идёт о:

f(x, y = 1) -> x + y?

Чтобы можно было передать только x, а y сам подставился как 1, если его не указали?
Это же легко делается. При выполнении, в стек, вместе с вашим x кидается 1, если вы не указали другое, и дальше вызывается функция.

Ок, можно спросить, а что, если у нас тип для y сложный? К примеру, какой-нибудь User { Id, Name }? Как тогда это будет компилироваться? Поэтому в языках с дефолтными параметрами есть ограничение, что указанное дефолтное значение должно удовлетворять условию: может быть вычислено при компиляции.

Другой вопрос, что всё это не имеет смысла, без именованных параметров. Иначе вы рискуете запутаться в собственном коде. Что обязательное, а что нет.

Или вы о другом? Или вы о ...T?

2 ответов

15 просмотров

Это называется дефолтными параметрами

> Иначе вы рискуете запутаться в собственном коде. Ну с такой логикой можно вообще все веселье убрать, например упрощенния а-ля алиас (*struct).attribute, или горутины, ведь это не очевидные вещи и в них можно запутаться))

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта