неоднозначные функции в c++

Я хотел бы знать, почему эти объявления не будут работать(несовместимы)

void f(int); //p1
void f(const int);//p2
void f(int &);//p3
void f(const int &);//p4

Если я понятно, компилятор не найдет разницы между (int &)и (const int &)и если я напишу f(12), он не сможет выбирать между двумя первыми объявлениями.. Я прав?

5
задан orangepixel 12 April 2012 в 11:05
поделиться