Odpovídáte na názor ke článku RVO pro korutiny (C++20).
Emplace je volání konstruktoru. Problém je, že co_return vrací jen jednu hodnotu.
emplace se píše jako
emplace(arg1,arg2,arg3...)
zatímco emplace(T(arg1,arg2,arg3...)) je automaticky move
stejně tak emplace(funkce()) je automaticky move
Určitým řešením by bylo co_return {arg1,arg2,arg3...} ale nebyl jsem schopen tuhle variantu jakkoliv zprovoznit.
takže zatím zbývá emplace(with_return_of([]{return T(arg1,arg2,arg3....);}))
Intenzivně se zabývám programováním zejména v jazyce C++. Vyvíjím vlastní knihovny, vzory, techniky, používám šablony, to vše proto, aby se mi usnadnil život při návrhu aplikací. Pracoval jsem jako programátor ve společnosti Seznam.cz. Nyní jsem se usadil v jednom startupu, kde vyvíjím serverové komponenty a informační systémy v C++
Přečteno 57 593×
Přečteno 27 718×
Přečteno 26 401×
Přečteno 24 367×
Přečteno 22 862×