template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( const basic_string<CharT,Traits,Alloc>& lhs, const basic_string<CharT,Traits,Alloc>& rhs ); | (1) | |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( const CharT* lhs, const basic_string<CharT,Traits,Alloc>& rhs ); | (2) | |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( CharT lhs, const basic_string<CharT,Traits,Alloc>& rhs ); | (3) | |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( const basic_string<CharT,Traits,Alloc>& lhs, const CharT* rhs ); | (4) | |
template<class CharT, class Traits, class Alloc> basic_string<CharT,Traits,Alloc> operator+( const basic_string<CharT,Traits,Alloc>& lhs, CharT rhs ); | (5) | |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( basic_string<CharT,Traits,Alloc>&& lhs, const basic_string<CharT,Traits,Alloc>& rhs ); | (6) | (since C++11) |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( const basic_string<CharT,Traits,Alloc>& lhs, basic_string<CharT,Traits,Alloc>&& rhs ); | (7) | (since C++11) |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( basic_string<CharT,Traits,Alloc>&& lhs, basic_string<CharT,Traits,Alloc>&& rhs ); | (8) | (since C++11) |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+(const CharT* lhs, basic_string<CharT,Traits,Alloc>&& rhs ); | (9) | (since C++11) |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( CharT lhs, basic_string<CharT,Traits,Alloc>&& rhs ); | (10) | (since C++11) |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( basic_string<CharT,Traits,Alloc>&& lhs, const CharT* rhs ); | (11) | (since C++11) |
template< class CharT, class Traits, class Alloc > basic_string<CharT,Traits,Alloc> operator+( basic_string<CharT,Traits,Alloc>&& lhs, CharT rhs ); | (12) | (since C++11) |
Returns a string containing characters from lhs
followed by the characters from rhs
.
lhs | - | string, character, or pointer to the first character in a null-terminated array |
rhs | - | string, character, or pointer to the first character in a null-terminated array |
1) basic_string<CharT,Traits,Alloc>(lhs).append(rhs)
.
2) basic_string<CharT,Traits,Alloc>(lhs) + rhs
.
3) basic_string<CharT,Traits,Alloc>(1,lhs) + rhs
.
4) lhs + basic_string<CharT,Traits,Alloc>(rhs)
.
5) lhs + basic_string<CharT,Traits,Alloc>(1,rhs)
.
6) std::move(lhs.append(rhs))
.
7) std::move(rhs.insert(0, lhs))
.
8) std::move(lhs.append(rhs))
or std::move(rhs.insert(0, lhs))
.
9) std::move(rhs.insert(0, lhs))
.
10) std::move(rhs.insert(0, 1, lhs))
.
11) std::move(lhs.append(rhs))
.
12) std::move(lhs.append(1, rhs))
.
#include <iostream> #include <string> int main() { std::string s1 = "Hello"; std::string s2 = "world"; std::cout << s1 + ' ' + s2 + "!\n"; }
Output:
Hello world!
appends characters to the end (public member function) |
|
appends characters to the end (public member function) |
|
inserts characters (public member function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/string/basic_string/operator+