Mat指针在重新分配时会自动释放还是作为ROI,source Mat被释放?

Will a Mat pointer be automatically released when being reassigned or as an ROI, source Mat is released?

我试图清楚地了解 Mat (OpenCV) 在许多特定情况下的工作原理。我在这个post中查询的案例如下:

  1. 当一个Mat指针被重新分配到其他位置时,之前的头文件和数据内存会自动释放吗?例如:

    Mat *m = XXX;
    m = YYY;
    
  2. 如果我调用sourceMat.release(),它是否也释放了header m?

    Mat m = sourceMat(Rect);
    

第二题,答案是

OpenCV's doc 开始,Mat Mat::operator()(const Rect& roi) const 将创建一个新的 header。所以释放 sourceMat 不会影响 m.