Это вопрос из экзамена на продвинутом курсе по ООП, который преподается на C ++ (в университете TAU, в этом семестре):
Q: В чем разница между указателем C ++ и ссылкой?
A. A reference is the entire object while a pointer is only the address of it.
B. The same meaning, and difference is only in syntax and usage.
C. The syntax used to access the object.
D. Pointers are simple address to the object while a reference uses the virtual table.
Какой правильный ответ?
Учитель курса утверждает, что A является правильным, и что ссылка на объект - это фактически сам объект.Это верно?Я понимаю, что доступ к ссылке эквивалентен доступу к самому объекту, однако при уничтожении ссылки мы не разрушаем сам объект.Ссылка - это альтернативное имя для объекта, но говоря, что reference == object true?
Кстати, лектор дал следующую ссылку на faq в поддержку своего утверждения , цитата:
"Важное примечание. Несмотря на то, что ссылка часто реализуется с использованием адреса на базовом языке ассемблера, не следует воспринимать ссылку как забавный указатель на объект. Ссылка - это объект . Это не указатель на объект и не копия объекта. Это объект. "
Но, тем не менее, я считаю,это неверно.