首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用QtGstreamer编译connect()错误

用QtGstreamer编译connect()错误
EN

Stack Overflow用户
提问于 2011-11-22 13:12:35
回答 1查看 721关注 0票数 0

我正在尝试监视正在通过QtGstreamer 管道的消息。

下面是所讨论的代码:

代码语言:javascript
复制
//pipeline is of type: QGst::PipelinePtr
pipeline->bus()->enableSyncMessageEmission(); 

QGlib::connect(pipeline->bus(), "sync-message", this, &MyClass::_msg_handler);

但是QtCreator抱怨connect()

代码语言:javascript
复制
/usr/include/QtGStreamer/QGlib/connectimpl.h:-1: In function 
‘bool QGlib::connect(void*, const char*, T*, R (T::*)(A0), QGlib::ConnectFlags) 
[with T = MyClass, R = void, A0 = const QGlib::RefPointer<QGst::Message>&, 
QGlib::ConnectFlags = QFlags<QGlib::ConnectFlag>]’:

/usr/include/QtGStreamer/QGlib/connectimpl.h:330: error: invalid initialization
of reference of type ‘const QGlib::Private::DestroyNotifierIfacePtr&’ from 
expression of type ‘QGlib::Private::GetDestroyNotifier<MyClass, void>’

/usr/include/QtGStreamer/QGlib/connect.h:259: error: in passing argument 5 of 
‘ulong QGlib::Private::connect(void*, const char*, QGlib::Quark, void*, const
QGlib::Private::DestroyNotifierIfacePtr&, uint, QGlib::Private::ClosureDataBase*, 
QGlib::ConnectFlags)’

可能是什么原因?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-22 18:15:12

解决了问题。

在我的例子中,connect()中指定的回调是我编写的类中的一个方法,所以问题是MyClass需要从QObject继承

代码语言:javascript
复制
class MasterSink : public QObject
{
   // ...
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8227378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档