Косяк в BCB5 при использовании stl
От: greymouse  
Дата: 28.06.03 20:58
Оценка:
Привет,

Пришлось столкнуться с проблемой. Под заказ написана компонента с
использованием stl'евского vector'а. Проблема в том, что код, работающий в
BCB5 Enterprise отказывается корректно работать в BCB5 Standart. Ошибка
вываливается в memory.stl при попытке копирования свойства компонента из
вызваной формы в вызвавший его модуль (что-то в духе приведенного примера).
Standart вылетает с A/V, а Enterprise корректно все отрабатывает. В рамках
одной формы Standart так же работает как надо. Никто не сталкивался с
подобным?

greymouse
Re: Косяк в BCB5 при использовании stl
От: WolfHound  
Дата: 29.06.03 06:50
Оценка:
Здравствуйте, greymouse, Вы писали:

G>Никто не сталкивался с подобным?

С подобным? Да каждый день в BCB6 то деструктор не вызовится то вызовется два раза то конструктор уйдет в бесконечную рекурсию то конкатенация строк вызывает конструктор по умолчанию у глобального обьекта ни какого отношения к строкам не имеющего....
Вобщем в товоем случае ИМХО надо долго и нудно трассировать и возможно перемена строк или подобное шаманство спасет ситуацию. Не исключено что ты гдето накосячил.
... << RSDN@Home 1.1 alpha 1 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[2]: Косяк в BCB5 при использовании stl
От: ArtDenis Россия  
Дата: 29.06.03 07:31
Оценка:
Здравствуйте, WolfHound, Вы писали:

G>>Никто не сталкивался с подобным?

WH>С подобным? Да каждый день в BCB6 то деструктор не вызовится то вызовется два раза то конструктор уйдет в бесконечную рекурсию то конкатенация строк вызывает конструктор по умолчанию у глобального обьекта ни какого отношения к строкам не имеющего....

Про конструктор у глобального обьекта ты правильно подметил. Я, помню, целый день убил на отладку глюка, когда после закрытия модальной формы непостижимым образом вызывался конструктор моего глобального объекта.

Вообще, подобные глюки в билдере лечатся следующими способами:

1. Удаление временных файлов компилятора и линкера и полная перекомпиляция проекта.
2. Переустановка билдера.
3. Выпрямление рук программера.
4. Переход на другую среду разработки.

Кстати, свой глюк я вылечил первым способом.
... << RSDN@Home 1.1 alpha 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re: Косяк в BCB5 при использовании stl
От: ArtDenis Россия  
Дата: 29.06.03 07:41
Оценка:
Здравствуйте, greymouse, Вы писали:
G>Привет,
G>...
G>greymouse

Попробуй поставить обновления для BCB5. Если не поможет, ищи ошибку в своём коде.
... << RSDN@Home 1.1 alpha 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[2]: Косяк в BCB5 при использовании stl
От: Вячеслав Ермолаев  
Дата: 30.06.03 11:14
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>С подобным? Да каждый день в BCB6 то деструктор не вызовится то вызовется два раза то конструктор уйдет в бесконечную рекурсию то конкатенация строк вызывает конструктор по умолчанию у глобального обьекта ни какого отношения к строкам не имеющего....


А примерчик такого поведения можно? Любопытно было бы пошлядеть.
С уважением, Вячеслав Ермолаев
Re[3]: Косяк в BCB5 при использовании stl
От: Владик Россия  
Дата: 01.07.03 11:28
Оценка:
Здравствуйте, Вячеслав Ермолаев, Вы писали:

ВЕ>А примерчик такого поведения можно? Любопытно было бы пошлядеть.


На рекурсивный конструктор я натыкался сам, и коллега на работе тоже. Подробностей сейчас уже не помню, то ли __fastcall забывали ставить, то ли virtual... Еще такой эффект иногда можно получить при использовании "placement new", причем даже для не VCL-объектов. Кстати, "placement new" для VCL объектов не работает впринципе, но при этом успешно компилится.
Как все запущенно...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.