[#bsl-operator_plus-06c]
= xref:bsl.adoc[bsl]::operator&plus;
:relfileprefix: ../
:mrdocs:

Return the concatenation of strings constructed from the specified `lhs` and `rhs` arguments, i&period;e&period;, `basic&lowbar;string(lhs)&period;append(rhs)`&period; The allocator of the returned string is determined per the rules in P1165 (https&colon;&sol;&sol;www&period;open&hyphen;std&period;org&sol;jtc1&sol;sc22&sol;wg21&sol;docs&sol;papers&sol;2018&sol;p1165r1&period;html)&period; Note that overloads that accept rvalue references are implemented for C&plus;&plus;11 and later only&period;

== Synopsis

Declared in `&lt;bslstl&lowbar;string&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;
    class CHAR&lowbar;TYPE,
    class CHAR&lowbar;TRAITS,
    class ALLOCATOR&gt;
xref:bsl/basic_string-0faf.adoc[bsl::basic&lowbar;string&lt;CHAR&lowbar;TYPE, CHAR&lowbar;TRAITS, ALLOCATOR&gt;]
operator&plus;(
    xref:bsl/basic_string-0faf.adoc[basic&lowbar;string&lt;CHAR&lowbar;TYPE, CHAR&lowbar;TRAITS, ALLOCATOR&gt;] const& lhs,
    xref:bsl/basic_string-0faf.adoc[basic&lowbar;string&lt;CHAR&lowbar;TYPE, CHAR&lowbar;TRAITS, ALLOCATOR&gt;] const& rhs);
----


[.small]#Created with https://www.mrdocs.com[MrDocs]#
