new
и delete
являются двумя наиболее важными ключевыми словами для управления памятью. И в самом простом случае вам просто нужно помнить, чтобы вызывать delete
для каждого объекта, для которого вы вызываете new
. Поэтому, если вы вызываете new
в цикле, вам нужно убедиться, что вы вызываете delete
для каждого из этих new
'ed объектов. Вам не нужно делать это из цикла, если вы сохраняете копию каждого указателя где-то, что может быть удалено позже.
malloc
, free
, calloc
и realloc
, вероятно, более продвинуты, чем то, о чем вам нужно беспокоиться. Я думаю, просто помните, что они есть, если стандарт new
/ delete
когда-либо чувствует себя ограниченным.
Тем не менее, умные указатели могут быть большой помощью, но иногда полезно знать, как делать трудные вещи, прежде чем взяться за умные указатели.