QT List&Qvector at赋值出错以及解决办法 QT基础入门【QT存储结构】

1、问题

error: passing 'const QString' as 'this' argument discards qualifiers
error: assignment of read-only location 'vec.QVector::at(0)'

在Qt中QList,Qvector一般获取元素都是通过at(index)来获取,但是at()的返回是一个const & 常引用,也就是元素不支持改变

 const T &at(int i) const;

也就是说*.at(i)并不能用来给Qlist与Qvector来赋值,要采用其他方式赋值

2、QList的赋值与取值操作

 // 定义QList变量                   
 QList list;           
 // 插入项目                        
 list << "A" << "B" << "C";     
 //list.at(0)=10;//[错误赋值]       
                                
 // 查询和重新定义元素                   
 if(list[0] == "A")             
 {                              
     list[1] = "A重定义";          
 }                              
 // 替换第2个元素                 

你可能感兴趣的:(QT基础入门,qt,开发语言)