Информация об изменениях

Сообщение Re[5]: auto - минусы использования? от 12.01.2023 12:26

Изменено 12.01.2023 12:27 rg45

Re[5]: auto - минусы использования?
Здравствуйте, σ, Вы писали:

V>>
σ>auto var = func();

σ>overloads(var);
σ>
Какой, хотя бы из двух, overloads() вызовется здесь? А если я третий добавлю?


σ>А если бы было overloads(func())? 🤡


Я думаю, что это просто немного разные сценарии. По сложности разные. В последнем случае временный объект создается для того, чтоб выполнить над ним ровно одно действие. Это действительно простой случай и без знания типа объекта, наверное, можно легко обойтись в большинстве случаев. В предыдущем же примере, как я понимаю, подразумевается, что над объектом могут выполняться какие-то еще другие действия, прежде чем он будет передан в функцию overloads. Вероятно так же, что этот объект не будет единственным в этом фрагменте программы. То есть, предыдущй пример в целом сложнее и явное указание типов действительно облегчает чтение кода, тут я полностью согласен.
Re[5]: auto - минусы использования?
Здравствуйте, σ, Вы писали:

V>>
σ>auto var = func();

σ>overloads(var);
σ>
Какой, хотя бы из двух, overloads() вызовется здесь? А если я третий добавлю?


σ>А если бы было overloads(func())? 🤡


Я думаю, что это просто немного разные сценарии. По сложности разные. В последнем случае временный объект (ну или ссылка — не суть) создается для того, чтоб выполнить над ним ровно одно действие. Это действительно простой случай и без знания типа объекта, наверное, можно легко обойтись в большинстве случаев. В предыдущем же примере, как я понимаю, подразумевается, что над объектом могут выполняться какие-то еще другие действия, прежде чем он будет передан в функцию overloads. Вероятно так же, что этот объект не будет единственным в этом фрагменте программы. То есть, предыдущй пример в целом сложнее и явное указание типов действительно облегчает чтение кода, тут я полностью согласен.