• 5250阅读
  • 6回复

用Q_OBJECT时,undefined reference to “vtable for xxx“ [复制链接]

上一主题 下一主题
离线耗生
 
只看楼主 正序阅读 楼主  发表于: 2009-07-28
我的环境是windows vista + codeblocks v8.02。
我查了下,都说先用moc xxxx.cpp生成相应的moc文件,再包含到.cpp里面去。
这应该是指在liunx下的解决方法吧,在windows下怎么解决啊????
初来咋到……
离线joiky
只看该作者 6楼 发表于: 2009-07-29
qmake -project
离线dbzhang800

只看该作者 5楼 发表于: 2009-07-29
引用第4楼耗生于2009-07-29 19:57发表的  :
添加  #include "XXXX.moc"  提示没此文件。
不过,有一种解决方法了,直接在QT Command Prompt里编译。但在codeblocks下还是不行。


这样的话,是你的codeblocks没配置好啊。


可你在首贴中说 moc XXXX.cpp
搞不清楚你的 XXXX.cpp 到底有没有 Q_OBJECT了,没有的话,就是常规用法,Q_OBJECT 在头文件内,应该不需要这一步的


建议你还是不要折腾codeblocks了,用qtcreator吧
离线耗生
只看该作者 4楼 发表于: 2009-07-29
添加  #include "XXXX.moc"  提示没此文件。
不过,有一种解决方法了,直接在QT Command Prompt里编译。但在codeblocks下还是不行。
初来咋到……
离线dbzhang800

只看该作者 3楼 发表于: 2009-07-29
引用第2楼耗生于2009-07-28 19:46发表的  :
我是初学者,不明白你的意思,能通俗点吗?
在哪个地方我弄过什么qmake与qmake -project,在tools下可以看到,也没弄明白。


那你的包含 Q_OBJECT 的  XXXX.cpp 文件内添加  #include "XXXX.moc" 这样的语句了没?
离线耗生
只看该作者 2楼 发表于: 2009-07-28
引用第1楼dbzhang800于2009-07-28 19:18发表的  :
windows下也是这么弄。
不过一般都是让qmake自动处理moc的,不清楚楼主为什么不用qmake
----------------------------------
.......

我是初学者,不明白你的意思,能通俗点吗?
在哪个地方我弄过什么qmake与qmake -project,在tools下可以看到,也没弄明白。
初来咋到……
离线dbzhang800

只看该作者 1楼 发表于: 2009-07-28
windows下也是这么弄。
不过一般都是让qmake自动处理moc的,不清楚楼主为什么不用qmake

----------------------------------

再就是,定义类时,Q_OBJECT 一般都是写在头文件内。这样也就不用在 XXXX.cpp 内添加  #include "XXXX.moc" 了
快速回复
限100 字节
 
上一个 下一个