Die Zeichenfolgenverkettung in C++ (Die Zeichenfolgenverkettung in C++), Lektion, Seite 724177
https://www.purl.org/stefan_ram/pub/zeichenfolgenverbindung_c++ (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
C++-Kurs

Die Zeichenfolgenverkettung in C++ 

Auch Zeichenfolgen können „addiert“ werden.

erweiterte Typregeln

::std::string  + ::std::string ::std::string 
double  + … → double 
+ double double 
int  + int int 

Wenn Zeichenfolgen „addiert“ werden, werden sie zu einer neuen Zeichenfolge verbunden.

main.cpp
#include <iostream>
#include <ostream>
#include <string>

using namespace ::std::literals;

int main() { ::std::cout << "abc"s + "def"s << "\n"s; }
::std::cout
abcdef
main.cpp
#include <iostream>
#include <ostream>
#include <string>

using namespace ::std::literals;

int main() { ::std::cout << "12"s + "3"s << "\n"s; }
::std::cout
123

Die Addition von Zeichenfolgen wird also anders umgesetzt als die von Zahlen. Wenn eine Umsetzung an Hand eines Operators und der Typen seiner Operanden ausgewählt wird, so sagt man, daß dies ein polymorpher  Operator sei.

Hier handelt es sich um eine Situation, in der die kleinen »s« wirklich einmal benötigt werden. Eines der kleinen »s« kann weggelassen werden.

main.cpp
#include <iostream>
#include <ostream>
#include <string>

using namespace ::std::literals;

int main() { ::std::cout << "12"s + "3" << "\n"s; }
Protokoll
123

Zwei C -Strings (ohne kleines »s«) können aber nicht „addiert“ werden.

main.cpp
#include <iostream>
#include <ostream>
#include <string>

using namespace ::std::literals;

int main() { ::std::cout << "12" + "3" << "\n"s; }
Protokoll
error: invalid operands to binary 'operator+'

?   Ausdrücke

Welche Werte haben die folgenden Ausdrücke jeweils?

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram724177 stefan_ram:724177 Die Zeichenfolgenverkettung in C++ Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd724177, slrprddef724177, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/zeichenfolgenverbindung_c++