在Qt中使用c ++运算符作为插槽

时间:2013-01-04 11:31:39

标签: c++ qt compiler-construction signals-slots

我想知道是否有可能(以及如何)使用c ++运算符,例如(),[]作为Qt插槽。

似乎编译器抱怨这个简单的代码

class MainWindowDecorator : public QObject
{  Q_OBJECT
private:
//some variables

public slots:
    int operator[](int i)
    {
    return i;
    }
}

错误如下:

Error: Not a signal or slot declaration

1 个答案:

答案 0 :(得分:1)

您可以创建调用专用operator的插槽包装。

问题是moc解析器不允许该定义,可能是因为它需要标识符而不是关键字。