在类中覆盖 Qt 函数
Posted
技术标签:
【中文标题】在类中覆盖 Qt 函数【英文标题】:Overriding Qt function in classes 【发布时间】:2018-11-13 12:29:24 【问题描述】:我有一个QDialog
类型的简单对话框。当用户单击“确定”按钮时,我想在关闭表单并返回调用者(主表单)之前进行一些验证。
我尝试在“CustomDialog.cpp”文件中添加以下代码:
void CustomDialog::accept()
// My code...
但我收到此错误:
错误:虚函数 'accept' 有不同的调用约定 属性('void()')比它覆盖的函数(它有 调用约定 'void () attribute((thiscall))')
我做错了什么?我还需要在 CustomDialog.hpp 中添加一些内容吗?
【问题讨论】:
@Rhathin 谢谢!\ 【参考方案1】:在您的.hpp
中,您应该在CustomDialog
类中声明accept()
方法。即void accept() override;
在public slots
下。
【讨论】:
不错。那么,调用约定问题到底是什么?以上是关于在类中覆盖 Qt 函数的主要内容,如果未能解决你的问题,请参考以下文章