В C , как и во многих других языках программирования есть такая штука как "указатель", "поинтер". Зачастую говорят, что использовать эти указатели удобнее и логичнее, а иногда - напротив, рекоммендуют не прибегать к этому.
Подскажите пожалуйста, в каких случаях нужно обращаться к объекту напрямую, через указатель, а в каких - указывая имя объекта?
Сказать, что есть случаи, когда нужно пользоваться ТОЛЬКО указателем, наверное, нет. Другой вопрос, когда логичнее использовать укзатель, или когда теоретически можно его использовать.
Указатели можно применять в таких случаях:
1. Когда нужно обратиться к объекту, при том что нам всё равно (мы не знаем) как под него распределена память.
2. В случае, если нам необходимо обратиться непосредственно к объекту, а не к его копии.
3. В случае если нам нужно оптимизировать программу, использование указателей может сыграть нам на руку: постоянное копирование объектов не очень хорошо сказывается на скорости компиляции и выполнения программы.
4. Взаимодействие с библиотекой C или C-подобной. Здесь вам придется использовать сырые указатели, освобождение памяти из-под которых вы производите в самый последний момент.