我正在使用一个集合来保存对象。我想更改集合中的第一个对象。这是我尝试过的:
set<myClass>::iterator i = classlist.begin();
i->value = 0;
这是我得到的错误:
error: read-only variable is not assignable
变量是如何变成只读的?怎么改?
最佳答案
集合中的内容实际上是只读的 - 您不能就地更改集合成员的值。您所能做的就是删除它,并添加一个具有所需新值的新成员。由于 std::set 的二叉树实现,此限制是必要的。
关于c++ - 如何更改集合中的对象子成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5876183/