Разъясните пожалуйста, что значит *&?
Это передача ссылки по адресу? Зачем она нужна, где применяется, чем отличается от обычной ссылки или указателя.
Ответы (1 шт):
Автор решения: AlexGlebe
→ Ссылка
int - целое число
int * - указатель на целое число
int * & - ссылка на указатель на целое число
int i ; // переменная целого числа
int * p = & i ; // указатель на переменную i
int * & s = p ; // ссылка на указатель p
int j ; // другая переменная целого числа
s = & j ; // меняет указатель который по ссылке указывал на p на адрес
// другой переменной. p раньше указывал на i , теперь на j
Ссылка на указатель применяется например как аргумент в функции, которая меняет этот указатель.
int i ;
int j ;
int * p = & i ;
...
void fun(int * & x) {
x = & j ; }
...
fun(p); // меняет указатель p, чтобы указывал на j