Dwa ciągi między nawiasami oddzielone przecinkiem w C ++ [duplikat]

Możliwy duplikat:
Operator C ++ Comma

Natknąłem się dziś na nieoczekiwane (przynajmniej dla mnie) zachowanie C ++, pokazane przez następujący snippit:

#include <iostream>

int main()
{
  std::cout << ("1", "2") << std::endl;

  return 0;
}

Wydajność:

2

Działa to z dowolną liczbą łańcuchów między nawiasami. Przetestowany na kompilatorze visual studio 2010, a także na klawiaturze.

Zastanawiam się, dlaczego to się kompiluje w pierwszej kolejności, jakie jest zastosowanie tej „funkcji”?

questionAnswers(5)

yourAnswerToTheQuestion