为什么OpenCV中没有MaskPredicate :: operator =(const MaskPredicate&)的定义?

时间:2016-03-10 09:49:38

标签: opencv

1 个答案:

答案 0 :(得分:1)

使赋值运算符保持私有且未实现是确保无法进行分配的常用方法(即编译将失败)。

在复制构造函数中找到相同的东西也是很常见的(虽然不是在这种情况下),因此对象不可复制。

潜在的原因通常与类的内部实现有关,这将由设计者决定。例如,确保不复制或分配单例,或者包含指向其他对象的指针的对象不是浅层复制,从而导致潜在的破坏问题。

在这种特殊情况下,已删除赋值运算符作为OpenCV - Bug #419的修正。