[#BloombergLP-bslma-ConstructionUtil-make-04] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslma.adoc[bslma]::xref:BloombergLP/bslma/ConstructionUtil.adoc[ConstructionUtil]::make :relfileprefix: ../../../ :mrdocs: Return, by value, an object of the specified (template parameter) `TARGET_TYPE`, having default value. If `allocator` is a `bslma`‐compatible allocator and `TARGET_TYPE` supports `bslma`‐style allocation, `allocator` is passed to the extended default constructor; otherwise, `allocator` is ignored. Note that this method is available only for compilers that reliably implement copy/move elision (i.e., RVO) on the returned object. This copy/move elision is required starting with C++17 and is widely implemented, though optional, prior to C++17. == Synopsis Declared in `<bslma_constructionutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class TARGET_TYPE, class ALLOCATOR> static TARGET_TYPE make(ALLOCATOR const& allocator); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#