Пример:
Foo make_foo(int a1, int a2){
Foo f(a1,a2);
return f;
}
Видел такие функции несколько раз, это просто вопрос стиля/предпочтения кодирования или это нечто большее, чем кажется на первый взгляд? В частности, этот ответ заставил меня задуматься над реализацией make_unique
и ее утверждением безопасно ли исключение - связано ли это с разделением создания и возврата? Или я слишком много читаю об этом? Почему бы просто не написать
Foo make_foo(int a1, int a2){
return Foo(a1,a2);
}