<< ++ , , .
C , 1 << 3 - , 8. int operator<<(int, int), 1 3 8.
, operator<< - . .
++ << -. cout << "Hello!", ostream & operator<< (ostream & output, char const * stream_me). ostream &. , std::cout << "Hello World" << "!";, operator<<... std:: cout "Hello World", "!".
, class Foo, , , ostream & operator<< (ostream & output, Foo const & print_me). .
#include <iostream>
struct Circle {
float x, y;
float radius;
};
std::ostream & operator<< (std::ostream & output, Circle const & print_me) {
output << "A circle at (" << print_me.x << ", " << print_me.y << ") with radius " << print_me.radius << ".";
}
int main (void) {
Circle my_circle;
my_circle.x = 5;
my_circle.y = 10;
my_circle.radius = 20;
std::cout << my_circle << '\n';
return 0;
}