qt的代码里,有的直接用connect(),有的用QObject::connect(), 有什么区别呢?或是为什么?
发布网友
发布时间:2022-05-16 11:25
我来回答
共1个回答
热心网友
时间:2023-10-21 03:16
不是那个Q_OBJECT影响了用法。
那些直接用connect函数其实都是继承于QObject的,因此可以不用加域名直接使用connect函数。所以说直接用connect()或用QObject::connect()其实用的都是一个函数。
你说:发现一般有自定义的信号和槽时都直接用connect
这些类里有Q_OBJECT宏。
其实是可以用Q_OBJECT宏就证明了这个类是继承于QObject的。所以就可以直接用connect函数
而继承于QObject的类加不加Q_OBJECT这个宏只是指明了这个类有没有自定义信号和槽的功能而已