To nie jest referencja, tylko adres (wskaźnik do str).
int& a = b; - deklaracja zmiennej referencyjnej
&b; - tak uzyskujesz adres (wskaźnik) na b
To, że funkcja przyjmuje argumenty przez referencje możesz ustalić podczas deklaracji, ale nie możesz do "zwykłej" funkcji działającej tylko na wartościach podać referencji (albo inaczej - możesz i nie ma to żadnego znaczenia, funkcja i tak wartość sobie skopiuje).