Это вопрос экзамена по продвинутому курсу ООП, преподаваемому на С++ (в университете TAU, в этом семестре):
Q: В чем разница между указателем на С++ и ссылкой?
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 является правильным и что ссылка на объект является, по сути, самим объектом. Это верно? Я понимаю, что доступ к ссылке эквивалентен доступу к самому объекту, однако при разрушении ссылки мы не уничтожаем сам объект. Ссылка является альтернативным именем для объекта, но говоря, что ссылка == object true?
BTW, лектор дал следующую ссылку на faq в качестве поддержки своего иска, цитата:
"Важное примечание. Несмотря на то, что ссылка часто выполняется с использованием адрес в базовой сборке языка, пожалуйста, не думайте о ссылка как забавный указатель к объекту. Ссылка - это объект. Это не указатель на объект или копия объекта. Это является объектом.
Но я считаю, что это неверно.