gpt4 book ai didi

c++ - 如果使用 QApplication,qApp->exec() 是否有效

转载 作者:行者123 更新时间:2023-11-30 02:35:53 25 4
gpt4 key购买 nike

如果我使用的是 QApplication 实例,调用 qApp->exec()QCoreApplication::exec() 是否有效?因为它是一个静态函数,所以在这两种情况下 QCoreApplication::exec() 都会被调用。但是,看起来即使我调用其中之一,我的基于 QApplication 的程序也能正常工作 - 这只是运气/巧合还是有效?

感谢您的帮助!

最佳答案

简答:

这不是运气,因为静态函数的行为也应该像普通的非虚拟函数一样。

长答案:

静态函数是不使用this 指针的成员函数。当您从一个对象调用它时,它的行为就像一个普通成员。

由于QAppliction派生自QCoreApplication,exec()是QCoreApplication的成员,所以它也是QCoreApplication派生类型对象的成员。

qApp 返回一个指向 QApplication 对象的指针,该对象也是一个 QCoreApplication,因此它也包含 exec()。

关于c++ - 如果使用 QApplication,qApp->exec() 是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33323512/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com