Вам никогда не нужно использовать malloc
в C ++.
Хорошо, теперь, когда я сказал никогда , одно исключение - когда вы используете код C, который по тем или иным причинам становится владельцем блока памяти, который вы ему даете, и позже вызывает free
на указатель на эту память, чтобы освободить его.
Я никогда не видел этого раньше (я обычно не использую библиотеки C и не знаю, насколько распространен этот сценарий), это просто надуманная ситуация, в которой я могу подумать, где использование malloc
будет не необязательно, потому что это неопределенное поведение - вызывать free
на части памяти, созданной new
.