Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/10: Рейтинг темы: голосов - 10, средняя оценка - 4.50
SkyN
1 / 1 / 0
Регистрация: 08.02.2010
Сообщений: 16
#1

shared_ptr и приватный деструктор

10.03.2010, 12:51. Просмотров 1746. Ответов 7
Метки нет (Все метки)

Хочу перенести деструктор в приватные члены класса A, но класс используется в boost::shared_ptr<A> и boost::weak_ptr<A>. Какой класс описать в качестве friend class?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.03.2010, 12:51
Ответы с готовыми решениями:

Приватный конструктор и деструктор
Зачем нужны приватный конструктор и деструктор? Как они работают?

Вызовется ли приватный деструктор?
Вызовется ли приватный деструктор? И как в С++ можно узнать, освободилась ли...

Почему создается виртуальный деструктор A, а в таблице виртуальных функций лежит деструктор B
Почему я делаю виртуальным деструктор A, а в таблице виртуальных функций лежит...

Приватный конструктор
Мне нужно для класса Matrix и Vector создать приватные конструкторы, но при...

Shared_ptr
Есть следующий код: int main() { std::map&lt;std::string,...

7
Alexandoros
228 / 66 / 11
Регистрация: 02.06.2009
Сообщений: 280
10.03.2010, 14:32 #2
Хочу перенести деструктор в приватные члены класса A
Чем вызвана сия космическая идиома?
0
Genius Ignat
1241 / 779 / 108
Регистрация: 16.09.2009
Сообщений: 2,014
10.03.2010, 14:36 #3
Что то напоминает интеллектуальные указатели.
Я всегда свои классы интеллектуальных ptr, сам писал.
0
Alexandoros
228 / 66 / 11
Регистрация: 02.06.2009
Сообщений: 280
10.03.2010, 14:41 #4
Не думаю что твои личные смарты лучше бустовских
0
SkyN
1 / 1 / 0
Регистрация: 08.02.2010
Сообщений: 16
10.03.2010, 14:52  [ТС] #5
Цитата Сообщение от Alexandoros Посмотреть сообщение
Чем вызвана сия космическая идиома?
создаю нечто похожее на Singleton, т.е. конструктор скрыт, и вместо него вызывается статическая функция getInstance() которая возвращает shared_ptr.
деструктор тоже с удовольствием бы скрыл от всех, кроме того самого shared_ptr.
0
Alexandoros
228 / 66 / 11
Регистрация: 02.06.2009
Сообщений: 280
10.03.2010, 15:29 #6
Цитата Сообщение от SkyN Посмотреть сообщение
создаю нечто похожее на Singleton, т.е. конструктор скрыт, и вместо него вызывается статическая функция getInstance() которая возвращает shared_ptr.
деструктор тоже с удовольствием бы скрыл от всех, кроме того самого shared_ptr.
Френдами объявить придется все классы. Но это глупо - можеш не скрывать, нет смысла.
delete для обджекта shared_ptr тебе компилятор сделать не даст.
0
Genius Ignat
1241 / 779 / 108
Регистрация: 16.09.2009
Сообщений: 2,014
10.03.2010, 15:32 #7
Не думаю что твои личные смарты лучше бустовских
Я и не думаю, просто мне своих хватает, да и boost у меня нету.
0
Alexandoros
228 / 66 / 11
Регистрация: 02.06.2009
Сообщений: 280
10.03.2010, 15:47 #8
Цитата Сообщение от Genius Ignat Посмотреть сообщение
Я и не думаю, просто мне своих хватает, да и boost у меня нету.
Я упирал не та то, лучше они или нет, а на то, что нет смысла писать велосипеды (разве в целях самообразования), когда проще скачать и заюзать готовое.
0
10.03.2010, 15:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.03.2010, 15:47

C++ 11 shared_ptr
Есть вопрос из теста You have some code that creates a HardwareContext object...

Shared_ptr
Всем хай. Есть некий класс и в нём такой метод: class Base { public:...

shared_ptr валится
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru