Здравствуйте, _NN_, Вы писали:
_NN>Увы поиск по форуму ничего не дал.
_NN>Хочется прояснить ситуацию с инициализацией через auto.
_NN>Являются ли a1 и a3 равносильными , а также a2 и a4 ?
_NN>_NN> A a1 = f("1");
_NN> A a2(f("2"));
_NN> auto a3 = f("3");
_NN> auto a4(f("3"));
_NN>
Если f возвращает A, то может иметь место Copy elision, и все четыре записи окажутся равносильны.
Если f возвращает не A, то a3 и a4 будут иметь этот тип (или производный), и вторые две записи не будут равносильны первым двум.
_NN>Если это так, то имеет ли смысл писать auto a = ... вместо auto a(...) ?
Имеет смысл писать auto a(...) вместо auto a = ... чтобы потом было проще искать настоящие вызовы оператора присваивания.
Имеет смысл писать auto, если нас особо не волнует тип созданной переменной.
Говорить дальше не было нужды. Как и все космонавты, капитан Нортон не испытывал особого доверия к явлениям, внешне слишком заманчивым.