Если я отображаю x
, я получаю "" с типом, сообщаемым как "object {string}" - это то, что я ожидаю.
&x
отображает 0x062fd7f0
(в моем случае) с типом, сообщаемым как "объект & *". Расширение, которое дает другой указатель и тип как «объект &».
В первом случае отладчик имеет достаточно информации, чтобы определить тип и показать что-то полезное.
Во втором случае отладчик «знает», что переменная является объектом, поэтому может отображать только указатели (я думаю).
UPDATE
Ваше обновление имеет смысл. Значения, сообщаемые &x
и &y
, являются указателями на переменные. Значение, которое они содержат, является указателем на неизменяемую строку "".