_L_>В чем разница? Кроме как синтаксиса обращения. Единственное преимущество вижу в том, что его удалить можно в любой момент. Но сколько ни смотрю исходники программ везде вижу:
_L_>_L_>CHTMLDoc* pHTMLDoc = new CHTMLDoc;
_L_>
_L_>Потому и возник ламерский вопрос.
Динамическая память в С++ используется в следующих типовых случаях
1. Необходимость "ручного" контроля над временем жизни объекта, т.е. моментами его создания/уничтожения.
2. Тип объекта не известен на стадии компиляции (размер массива, конкретный
тип полиморфного объекта).
3. Количество отдельных объектов не известно на стадии компиляции (элементы
списка, узлы дерева).
4. По каким-то имплементационно-зависимым причинам объект не может быть создан в других типах памяти (например, слишком велик для автоматической памяти в данной реализации).
В остальных случаях (если я ничего не упустил) создавать объект имено в динамической памяти нет никакой необходимости.
В твоем примере имеет место, скорее всего, первый или второй случай (или оба сразу).