#cpp #ссылки
В учебнике написано, что любая ссылка должна быть определена в момент объявления, и определена объектом, а не литералом. И её нельзя перевязать на другой объект. Из любопытства сделал следующее: { int val = 20,val2 = 2; int &refVal = val; refVal = val2; cout<Ответы
Ответ 1
Дело в том, что ссылка это просто синтаксический сахар над указателями, поэтому, если переписать Ваш код через них, должно быть понятно, что происходит: { int val = 20,val2 = 2; int*const refVal = &val; *refVal = val2; cout<<*refVal<Ответ 2
Ссылка это второе имя (псевдоним) переменной. Именно потому она обязательно должна быть определена: вторым именем можно быть только если есть первое. Учитывая что в с++ любой тип данных - класс, и любая переменная объект - ваш код не противоречит словам автора. Под литералом видимо подразумевалось строковая константа. (например "myLit")
Комментариев нет:
Отправить комментарий