如何修改向量的向量的元素(使用自动迭代器?)>

问题描述 投票:0回答:1

我是STL的新手(我也不是专业的编码人员,并且在尝试使用自动迭代器修改Matrix的元素时遇到了问题...我尝试了许多不同的方法(也使用就像您看到的那样),但我仍然无法处理数据。下面的代码是我想要做的...

for (auto & e : D.getMat())
{
    for (auto & i : e)
    {
        i = 3;
    }
}

D是我的类“ Matrix”的对象,而getMat是:

vector<vector<int>> getMat();

这就是它的作用:

vector<vector<int>> Matrix::getMat()
{
    return _mat;
}

_ mat是私有的,并声明为:

vector<vector<int>> _mat;

请原谅我的无知,但我正在朝这个世界迈出第一步。

我是STL的新手(我也不是专业的编码人员,并且在尝试使用自动迭代器修改Matrix的元素时遇到了问题...我尝试了许多不同的方法(也使用...

c++ stl iterator auto
1个回答
0
投票

[getMat()按值返回,因此它返回一个副本,并且对其所做的任何修改都与原始数据成员_mat无关。

© www.soinside.com 2019 - 2024. All rights reserved.