Я очень запутался в управлении памятью по отношению к векторам и мог бы сделать некоторые основные объяснения.Управление памятью и вектором C++
У меня есть программа, которая использует большие векторы. Я создал векторы с нового оператора и выпустить их в конце программы с удалить, чтобы память обратно.
Мой вопрос, если программа падает или становится прервана для того, что когда-либо причины, удалить линии будет пропущена, есть способ восстановить память даже в этом случае.
У меня также есть некоторые другие крупные векторы, которые я назначу без нового ключевого слова. Я читал, что они будут созданы в куче, но не должны быть освобождены в любом случае, так как управление памятью обрабатывается «под капотом». Однако я не уверен, что это так, поскольку каждый раз, когда я запускаю свою программу, я теряю ОЗУ.
Так что мой второй вопрос, можно векторы, созданные без нового ключевого слова действительно оставить их собственные устройства и надежными, чтобы очистить после себя, даже если код будет прерван в середине потока.
И я полагаю, третий вопрос, который только подрессоренный на ум, если векторы автоматически создаются в куче, почему бы вы когда-либо использовать нового ключевым слово с ними? Спасибо за чтение, ben
«Каждый раз, когда я запускаю свою программу, я теряю RAM», вы имеете в виду, что «моя доступная RAM становится меньше, пока я не выйду из программы», или «моя доступная ОЗУ становится меньше даже после выхода из программы, и она становится еще меньше в следующий раз, когда я забегу, до одного дня у меня останется совсем нет ОЗУ "? –
Я отвечаю на вопрос Макса. Windows, я считаю, фактически не выгружает завершенные программы, если это не нужно. Таким образом, они запускаются быстрее после первого раза. –
«И я полагаю, что третий вопрос, который только что возник в сознании, заключается в том, что если в кучу автоматически создаются векторы, почему бы вам использовать новое ключевое слово с ними?» Вам нужно будет сделать это, только если вам нужно передать вектор в точку за пределами текущей области. Это относительно редко на практике. – rlbond