Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/129.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何更改qlist中颜色的值_C++_Qt_Qlist - Fatal编程技术网

C++ 如何更改qlist中颜色的值

C++ 如何更改qlist中颜色的值,c++,qt,qlist,C++,Qt,Qlist,我有一个圆形的对象,它包含绘制它的属性,比如宽度,coorxy,颜色。我有一个这个圆(对象)的qlist,但是当我试图改变颜色时,我得到了一个错误 class Circle { int x; int y; int width; QColor color } QList <Circle> circles; 将'QColor&QColor::operator=(Qt::GlobalColor)'的'const QColor'作为'this'参数传递会丢弃限定符[-fpperm

我有一个圆形的对象,它包含绘制它的属性,比如宽度,coorxy,颜色。我有一个这个圆(对象)的qlist,但是当我试图改变颜色时,我得到了一个错误

class Circle {
 int x;
 int y;
 int width;
 QColor color
}

QList <Circle> circles;
将'QColor&QColor::operator=(Qt::GlobalColor)'的'const QColor'作为'this'参数传递会丢弃限定符[-fppermissive]

QList
at()
函数返回一个常量引用:
const T&QList::at(int i)const
,因此无法修改它。改用
运算符[]
圆圈[3]。颜色=Qt::黄色


另外请注意,现在您的类的所有成员都是
私有的
(默认情况下),因此您无论如何都不能设置
颜色

在使用
[]
操作符之前,不要忘了检查索引是否超出范围。@vahancho,
at()
也不会检查数组范围,因此我假设OP知道它。
circles.at(3).color = Qt::yellow;