kzhereb / knu-is-ooop2019

Materials for "Fundamentals of OOP" course
MIT License
3 stars 0 forks source link

T10.35. Що таке weak_ptr? #35

Open yanaskyrda opened 4 years ago

JuliaSamartseva commented 4 years ago

Використання weak_ptr схоже з використанням shared_ptr, однак при його створенні не збільшується reference count.

solovdaria commented 4 years ago

Це також розумний вказівник. Його особливість полягає в тому, що він може усунути проблему виникнення циклічних посилань і не дозволяє працювати з ресурсом напряму.

Velly69 commented 4 years ago

Це smart pointer, схожий на shated_ptr, але який не бере участі у підрахунку посилань. Тому за його допомогою усувається проблема циклічних посилань.

AntonHladkiy commented 4 years ago

Це pointer схожий на shared_ptr , але при його створенні не збільшується лічильник посилань. Тому його використовують якщо виникають циклічні посилання.

RostyslavMV commented 4 years ago

Це smart pointer, схожий на shated_ptr, але який не збільнує лічильник посилань при створенні. За його допомогою усувається проблема циклічної залежності.

ilyakorenevskyi commented 4 years ago

weak_ptr не здійснює підрахунок кількості посилань, а так це smart pointer

Vladyslav-Samokryk commented 4 years ago

Клас weak схожий з shared_ptr є вказівник на об'єкт, яким володіє відразу кілька об'єктів. Покажчик можна як переміщати, так і копіювати. Число існуючих покажчиків відстежується за допомогою лічильника посилань. Коли лічильник посилань обнуляється, викликається деструктор об'єкта.