全部修改
直接通过迭代就可以修改:
struct LinkageAxis_t{
uint32_t x;
uint32_t y;
uint32_t z;
};
QHash<int,LinkageAxis_t> hash;
hash.insert(0,{00,01,02});
hash.insert(1,{10,11,12});
hash.insert(2,{20,21,22});
for(auto &val : hash){
qDebug("val:%d",val.x);
val.x += 100;
}
for(auto &val : hash){
qDebug("val2:%d",val.x);
}
单个修改
单个的只能使用括号重载符了:
list[0].x = 2,或者
hash[1].x = 2
不过要判断这个元素是否有效,特别是指针元素的情况下!
还有种方法: