Ищу удаленную работу, Python/C/C++
Контакты: xaka2004 [хвостатая] gmail [точка] com
Контакты: xaka2004 [хвостатая] gmail [точка] com
catalog_map_type catalog_map_; url_conveyor_map_type url_map_; http_method_conveoyr_map_type item_map_; }; Теперь, при после вызова конструктора pimpl, обращение к item_map_ ведёт к падению процесса apache с сообщением "Segmentation fault". Добавление виртуального деструктора к pimpl ведёт к тому, что процесс падает при обращение к любой члену pimpl. Однако, если вместо непосредственного вызова конструктор использовать такой вот код: pimpl_ = reinterpret_cast<pimpl*>(operator new(sizeof(pimpl))); new (&pimpl_->catalog_map_) pimpl::catalog_map_type; new (&pimpl_->url_map_) pimpl::url_conveyor_map_type; new (&pimpl_->item_map_) pimpl::http_method_conveoyr_map_type; То всё работает отлично. Дальнейшее иследование показало, что pimpl_ = reinterpret_cast<pimpl*>(operator new(sizeof(pimpl))); new (pimpl_) pimpl; не помогает. Необходима ручная инициализация членов структуры. Т.е. фактически можно достаточно смело утверждать, что дело в ошичной работе оператора размещения для данной структуры. Собственно, в чём дело и как победить?