Chamando funções de operador primitivas explicitamente em C ++

int a, b, c; 

//do stuff. For e.g., cin >> b >> c; 

c = a + b;          //works 
c = operator+(a,b); //fails to compile, 'operator+' not defined. 

Por outro lado, isso funciona -

class Foo
{
 int x; 
public:
 Foo(int x):x(x) {} 

 Foo friend operator+(const Foo& f, const Foo& g)
 {
  return Foo(f.x + g.x); 
 }

};    

Foo l(5), m(10); 

Foo n = operator+(l,m); //compiles ok! 
É possível invocar o operador + (e outros operadores) de tipos primitivos (como int) diretamente?Se sim, como?Caso contrário, existe uma verborragia de referência em C ++ que deixa claro que isso não é possível?

questionAnswers(2)

yourAnswerToTheQuestion