Макросы C ++ для обеспечения освобождения используемой памяти?

Итак, я немного n00b и читал о new , delete и указателях, и я уверен что я забуду слишком много удалений в течение своей жизни. Так что мне было интересно, будет ли такой макрос больше проблем, чем он того стоит.

#define withObject(ptr, value, BODY)                       \
{                                                           \
     ptr = value;                                           \
     BODY                                                   \
     delete ptr;                                            \ 
     ptr=NULL                                               \
}

Может ли этот макрос вызвать какие-то проблемы или вести себя неожиданным образом?

Изменить: ой, я оставил d на освобождении. Спасибо всем за ответы.

6
задан Riley 6 May 2011 в 19:35
поделиться