У меня есть класс для приложения обнаружения (один метод которого инициализирует необходимые буферы). Класс создается динамически, а метод init и run вызывается при нажатии кнопки. Работает нормально.
Однако, если я закончу обнаружение и вернусь к графическому интерфейсу и попытаюсь снова нажать кнопку, чтобы создать новый класс обнаружения и запустить его снова, приложение вылетает.
Он застревает при вызове cvCreateMemStorage (). Проблема иллюстрируется здесь:
проблема http://img573.imageshack.us/img573/9498/problemp.jpg
1-й раз, работает нормально. 2-й раз, проблема!
В первый раз, ModelStorage инициализируется правильно. Во второй раз, это не так. Я хотел бы иметь, однако, что, когда класс обнаружения закончен, все хранилище в куче будет удалено, и я буду свободен сделать вызов cvCreateMemStorage () в новом классе?
Я также попытался освободить память modelStorage по окончании установки cvReleaseMemStorage (& modelStorage); на занятиях деструктор НО не радости. Как будто память распределяется неправильно.
Итак, прекрасные обитатели stackoverflow, есть идеи? (