IplImage* temp_object = &(IplImage)object;
Это не дает вам указатель на object
, интерпретируется как IplImage
;вместо этого он создает временное IplImage
из object
, дает вам указатель на него, а затем уничтожает временное, оставляя temp_object
, указывающее на ничто действительное.Использование temp_object
впоследствии даст неопределенное поведение.
Я не знаком с библиотекой, но, возможно, вам нужен указатель на object
(если IplImage
является подтипом любого типа, object
является):
IplImage* temp_object = static_cast<IplImage *>(&object);
с использованием приведения для преобразования указателя (или ссылки, если вы предпочитаете), а не самого объекта.
Или, возможно, вы хотите новый (не временный)объект:
IplImage temp_object(object);