Tuesday, December 8, 2009

Delete this! [C++]

W ramach odświeżania swojej (dość zakurzonej, niestety) wiedzy o C++ natrafiłem na bardzo ciekawe pytanie:

Czy można wywołać instrukcję delete this; wewnątrz metody obiektu? Co się stanie i dlaczego? Czy można wykonać jakiś inny kod po wywołaniu tej instrukcji?

Zmieszałem się. Z jednej strony - dlaczego ktoś chciałby robić coś takiego? Z drugiej okazuje się, że są sytuacje, w których takie wywołanie ma sens (nie tylko semantyczny). Całość tematu została ładnie wyjaśniona tutaj, a w tym miejscu znajduje się kilka informacji pobocznych.

No comments:

Post a Comment