в C++ 11, у нас есть shared_ptr
, и когда мы используем его вместе с new
, нам не нужно будет явным образом вызывать delete
позже. эта часть работы была позабочена на shared_ptr
.C++, умный указатель и сбор мусора
с учетом сказанного, почему ppl продолжает говорить, что сборщик мусора в C++?
Что здесь отсутствует?
Могу ли я использовать/думать о shared_ptr
как сборщик мусора в C++?
последующие действия: могу ли я использовать/думать об shared_ptr как сборщик мусора в C++? –
Ух не совсем. Сбор мусора - это независимый процесс, который периодически очищает незарегистрированную память. Умные указатели - это просто объекты, которые автоматически очищают свою связанную память, когда они разрушаются. Умные указатели практически не требуют затрат времени исполнения, в то время как GC может иметь потенциал довольно больших затрат времени исполнения. – jready
@ResidentBiscuit Ссылочный счетчик ссылок с интеллектуальными указателями несут затраты времени исполнения. Подсчет ссылок не предоставляется бесплатно. – juanchopanza