assignment of member 'flash_info' in read-only object
时间: 2024-04-25 10:21:00 浏览: 170
引用\[1\]:这个警告是由于在C90标准中,不允许在代码和声明之间混合使用。\[1\]引用\[2\]:在你的代码中,你将at()方法修改为了\[\]操作符,这样程序就可以正常运行了。\[2\]引用\[3\]:在你之前的代码中,你遇到了一个问题,即在一个只读对象中对成员进行赋值。\[3\]
根据你提供的代码和问题,我可以看出你在构造函数中创建了一个QList,并将QPair插入到其中。然后,你尝试使用at()方法来访问QList中的元素,并对其成员进行赋值。然而,由于at()方法返回的是一个只读对象,所以你无法对其成员进行赋值,导致出现了报错。
解决这个问题的方法是使用\[\]操作符来访问QList中的元素,这样就可以对其成员进行赋值而不会出现报错。通过将代码中的list.at(0).second.m_num = 102;修改为list\[0\].second.m_num = 102;,你可以成功地对成员进行赋值。\[2\]
总结起来,你遇到的问题是由于对只读对象的成员进行赋值所导致的报错。通过使用\[\]操作符来访问QList中的元素,你可以解决这个问题。
#### 引用[.reference_title]
- *1* [新路程------ 编译遇错](https://blog.csdn.net/u013308744/article/details/78928887)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [assignment of member ‘QPair,Data*>::second“ in read-only object](https://blog.csdn.net/TianYanRen111/article/details/119570280)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文