我收到以下问题:
那是工作:
#include <QtCore/QCoreApplication>
#include <QColor>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QColor *c = new QColor();
c->setRgb(12,123,13);
return a.exec();
}
但这不是:
#include <QtCore/QCoreApplication>
#include <QColor>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QColor c();
c.setRgb(123,213,2);
return a.exec();
}
Qtcreator让我知道:
到底是怎么回事?
编辑
好的解决方案是使用不带'()'的Qcolor c,但是如果它是类的成员怎么办?然后直接访问仍然不起作用...即:
class X{
QColor c;
void func(){
c.setRgb(1,2,3);
}
}
最佳答案
这个
QColor c();
是一个函数声明。更改为
QColor c;
这可能是数百个类似问题的重复。
关于c++ - QT-指向QColor的指针可直接访问,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4359452/