[#BloombergLP-bslstl-Function_InvokerUtil_IsExplicitlyConvertible-0c] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslstl.adoc[bslstl]::Function_InvokerUtil_IsExplicitlyConvertible :relfileprefix: ../../ :mrdocs: forward declaration == Synopsis Declared in `<bslstl_function_invokerutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class FROM, class TO> struct Function_InvokerUtil_IsExplicitlyConvertible : xref:BloombergLP/bslstl/Function_InvokerUtil_IsExplicitlyConvertibleImp-0d.adoc[Function_InvokerUtil_IsExplicitlyConvertibleImp<void, FROM, TO>] ---- == Base Classes [cols="1,4"] |=== | Name| Description | `xref:BloombergLP/bslstl/Function_InvokerUtil_IsExplicitlyConvertibleImp-0d.adoc[Function_InvokerUtil_IsExplicitlyConvertibleImp<void, FROM, TO>]` | forward declaration |=== == Specializations [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslstl/Function_InvokerUtil_IsExplicitlyConvertible-01.adoc[`Function_InvokerUtil_IsExplicitlyConvertible<FROM_TO, FROM_TO>`] | A type is always explicitly convertible to itself. This is important for classes with deleted copy constructors and/or assignment operators, because starting in C++17, they can be returned from functions, due to "return value optimization (RVO)". |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#