いくつかの OpenCV のcv::Mat
行列を組み合わせたクラスがあります。
クライアントが基になるデータの読み取りを許可するが書き込みを許可しない const アクセサーと、クライアントがデータの読み取りと書き込みを許可する非 const アクセサーの両方を提供できる方法はありますか。
私はこのようなことを考えています:
class MyClass {
cv::Mat a;
public:
cv::Mat a() { return a; }
const cv::Mat& a() const { return a; }
};
しかし、これにより、基礎となるデータが const アクセサーによって変更されることを防ぐことができるでしょうか? それとも、cv::Mat のヘッダー データを保護するだけですか?