不知道该如何叙述这个问题,请看代码:
#include <set>
#include <iostream>
using namespace std;
struct test {
int data[3];
};
int main(void) {
test t1;
set<test> s;
s.insert(t1);
s.begin()->data[0] = 1;//此处赋值报错:read-only variable is not assignable
return 0;
}
应该是set内部的问题吧?
求高人解释,非常感谢...
PHP中文网2017-04-17 14:27:34
set のイテレータは読み取り専用であり、変更することはできません (要素は set 内で内部的にソートされているため、要素の値を自由に変更すると順序が崩れる可能性があります)。
要素の値を変更するには、まず古いものを削除してから、新しいものを挿入する必要があります