В следующих строках кода, если я удалю «&» из строки («***»), очевидно, не будет никаких изменений в функциональности. Есть ли причина оставить его как есть или он может быть полезен в любом случае? Не могли бы вы немного рассказать об отличиях? Спасибо.
#include <iostream>
class Entity
{
public:
void Print() const
{
std::cout << "Hello" << std::endl;
}
Entity()
{
std::cout << "Constructed!" << std::endl;
}
};
int main()
{
Entity e;
Entity* ptr = &e;
// ***
Entity& entity = *ptr;
entity.Print();
std::cin.get();
}