我经常看到人们使用 connect()
而没有 QObject::
。
我怎样才能做到这一点?当我只写 connect()
时,我得到错误:
'connect' 未在此范围内声明
我不能使用 using namespace QObject
,因为 QObject 是类,而不是命名空间。
最佳答案
当您处于从 QObject
继承的类的成员函数中时,可以完成此操作。当您不在从 QObject
继承的对象的范围内时,您应该使用对象实例而不是范围。
例如:
class MyClass : public QObject
{
...
void myMemberFunction()
{
...
connect(...); // Implicitly uses this->connect(...)
...
}
...
};
void myNonmemberFunction(MyClass& instanceOfMyClass)
{
...
instanceOfMyClass.connect(...)
...
}
关于c++ - 在没有 QObject::的情况下使用 connect() 和 tr(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28070032/