Здравствуйте, huntex, Вы писали:
H>Всем привет! Есть следующий РАБОЧИЙ код:
H>H>void foo1()
H>{
H> CvMat _h = cvMat(3, 3, CV_64F); // вызывается конструктор, а затем еще и конструктор копии
H> ... работа с _h ...
H> foo3(*_h); // верный результат!
H>}
H>
H>Теперь пытаюсь разделить код на 2 функции
H>H>void foo1()
H>{
H> CvMat _h;
H> foo2(& _h);
H> foo3(*_h); // ошибка!
H>}
H>void foo2(CvMat * _h)
H>{
H> * _h = cvMat(3, 3, CV_64F); // а здесь assignment - вызывается operator=
H> ... работа с _h ...
H>}
H>
Ищи разницу в реализациях конструктора копии и оператора пристваивания.