编译时,我的Mac上的QT4有问题
playlistWidget.cpp中包含的文件:16: ./playlistWidget.h:121:16:警告:' NPlaylistWidget :: mimeData'皮 超载 虚函数[-Woverloaded-virtual] QMimeData * mimeData(const QList items)const; ^ / opt / local / libexec / qt4 / Library / Frame / QtGui.framework / Version / 4 / Headers / qlistwidget.h:280:24: 注意: 隐藏的重载虚函数' QListWidget :: mimeData'在这里宣布: 第一个参数的类型不匹配(' const QList' vs ' const QList') virtual QMimeData * mimeData(const QList items)const; ^
我的代码:
private:
QPointer<QDrag> m_itemDrag;
bool m_fileDrop;
QList<QUrl> m_mimeDataUrls;
QStringList mimeTypes() const;
QMimeData *mimeData(const QList<NPlaylistWidgetItem *> items) const;
bool dropMimeData(int index, const QMimeData *data, Qt::DropAction action);
#ifdef Q_WS_MAC
Qt::DropActions supportedDropActions() const;
#endif
protected:
void dropEvent(QDropEvent *event);
void dragEnterEvent(QDragEnterEvent *event);
void dragMoveEvent(QDragMoveEvent *event);
void dragLeaveEvent(QDragLeaveEvent *event);
void mouseMoveEvent(QMouseEvent *event);
我该如何解决?
答案 0 :(得分:0)
功能签名是:
QMimeData *mimeData(const QList<QListWidgetItem *> items) const
你的QList由NPlaylistWidgetItem *参数化,签名为:
QMimeData *mimeData(const QList<NPlaylistWidgetItem *> items) const
将参数更改为QListWidgetItem *,应该没问题。 通常建议至少使用-Wall -Wextra -Werror
进行编译