Я создал вектор вектора класса shared_ptr
(_cells
).
class Goban
{
public:
Goban();
~Goban();
private:
vector<vector<shared_ptr<Cell>>> _cells;
};
Я инициализирую так:
Goban::Goban() : _cells(18, vector<shared_ptr<Cell>>(18, make_shared<Cell>()))
{
}
Проблема в том, что все указатели относятся ктот же указатель динамически (если я правильно понял). Поэтому, когда я изменяю элемент в своем классе Cell, используя мой вектор, он меняет все остальные элементы.