Вы не должны использовать malloc
в C ++.
Вам нужно беспокоиться об управлении памятью всякий раз, когда вы пытаетесь вручную управлять динамической (выделенной с помощью new
) памятью, независимо от того, выделяете ли вы ее самостоятельно или получаете ее, вызывая какую-то функцию.(Документация функции должна указывать, нужно ли вам освобождать все, что она возвращает, и какой метод для этого нужно использовать.)
Более того, вам нужно беспокоиться о каждом ресурсе вы приобретаете, будь то память, открытые файлы, заблокированные мьютексы или что-то еще.Вам не нужно беспокоиться, когда вы используете такие методы, как RAII .
Многие ресурсы (строки, массивы и другие контейнеры, файлы и т. Д.) Уже включены в классы RAII.Используйте их и больше заботьтесь о своих алгоритмах, а не о деталях управления ресурсами.