赞
踩
qt插件,在写自定义interface时,使用宏 Q_DECLARE_INTERFACE来声明自定义interface,在编译时显示:q_declare_interface 不能实例化抽象类。
最后发现问题是在定义plugin时,头文件包含顺序有问题。应该先包含再包含 “myinterface.h”.
因为Q_DECLARE_INTERFACE是定义在qobject.h中的,先包含QObject头文件可以确保在解析myinterface.h时已经知道了declare宏。
所以更好的办法是在interface.h中直接包含QObject头文件。可以避免此问题
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。