Share via


CStringT::operator +

Concatenates two strings or a character and a string.

friend CStringT operator+(
   const CStringT& str1,
   const CStringT& str2
);
friend CStringT operator+(
   const CStringT& str1,
   PCXSTR psz2
);
friend CStringT operator+(
   PCXSTR psz1
   const CStringT& str2,
);
friend CStringT operator+(
   char ch1
   const CStringT& str2,
);
friend CStringT operator+(
   const CStringT& str1,
   char ch2
);
friend CStringT operator+(
   const CStringT& str1,
   wchar_t ch2
);
friend CStringT operator+(
   wchar_t ch1
   const CStringT& str2,
);

Parameters

  • ch1
    An ANSI or Unicode character to concatenate with a string.

  • ch2
    An ANSI or Unicode character to concatenate with a string.

  • str1
    A CStringT to concatenate with a string or character.

  • str2
    A CStringT to concatenate with a string or character.

  • psz1
    A pointer to a null-terminated string to concatenate with a string or character.

  • psz2
    A pointer to a string to concatenate with a string or character.

Remarks

There are seven overload forms of the CStringT::operator+ function. The first version concatenates two existing CStringT objects. The next two concatenate a CStringT object and a null-terminated string. The next two concatenate a CStringT object and an ANSI character. The last two concatenate a CStringT object and a Unicode character.

Note

Although it is possible to create CStringT instances that contain embedded null characters, we recommend against it. Calling methods and operators on CStringT objects that contain embedded null characters can produce unintended results.

Example

// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;
CAtlString s1(_T("dog ")), s2(_T(" awake")), s3;  // Empty CAtlString objects

s1= _T("The ") + s1;
s3= s1 + _T('i');
s3= s3 + _T('s');
s3= s3 + s2;
ASSERT(s3 == _T("The dog is awake"));   

Requirements

Header: cstringt.h

See Also

Reference

CStringT Class