Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема CBLPtr (число прочтений - 2088 )
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
CBLPtr
25. Августа 2008 :: 19:39
Печать  
artbear

Налетел тут на грабли, связанные с некорректным копированием CBLPtr.
Посмотри, плз, на последнюю правку blptr.h

Шаблонные варианты не катят для копирования одного и того же типа.

Мне был нужен исключительно конструктор копирования.
Но с оператором копирования, я уверен - те же грабли.
Постарайся разобраться (убедиться, что шаблонные варианты не вызываются), и если получится - исправить и для оператора копирования также.

Вообще, засада это (неверное копирование) очень неприятная, потому как ни разу не очевидная.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: CBLPtr
Ответ #1 - 25. Августа 2008 :: 20:40
Печать  
Да, Артур: добавлю:

Конечно, я могу и сам исправить, просто хотелось обратить твое внимание на это безобразие.
А грабли лежат, как ты понимаешь, в том, что IncrRef для копируемого контекста вызвается меньшее число раз, чем DecrRef.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: CBLPtr
Ответ #2 - 26. Августа 2008 :: 04:26
Печать  
Ага, были баги, исправил.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать