我有以下问题:
#include <vector>
#include <iostream>
using namespace std;
class Mat {
public:
        typedef vector<float>::size_type size_type;
        Mat (size_type k, size_type m)
        :data_(k*m){}
        inline vector<float> data() const {return data_;}
        vector<float> data_;
};
int main(){
    Mat f (6, 10);
    cout << f.data().size() << " " << f.data().end() - f.data().begin();
}
输出为 60 122。
我以为整个向量 data_ 一遍又一遍地移动,但是为什么在这个操作之后 begin() end() 无效?