当前位置: 代码迷 >> QT开发 >> error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * _thisc
  详细解决方案

error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * _thisc

热度:864   发布时间:2016-04-25 03:25:40.0
求助 error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thisc
    别人发来的一个文件,要在自己的电脑上调试成功,路径配置,环境变量基本配好,就出现了error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall  这个链接错误不知道怎么修改,已经将qt5.1.1相关的lib文件统统包含到附加依赖项里面了。还是有错误。

    想问这个链接错误需要包含哪个lib文件才能解决。
       error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall
------解决方案--------------------
这个是信号和槽连接的问题,楼主检查是否添加了Q_OBJECT宏?检查一下信号与槽的连接方式是否正确
------解决方案--------------------
引用:
Quote: 引用:

这个是信号和槽连接的问题,楼主检查是否添加了Q_OBJECT宏?检查一下信号与槽的连接方式是否正确

            您好,谢谢指点,我检查发现有定义Q_OBJECT这个宏,我刚刚接触QT,老师给了一个写好的大的工程给我调通,说实话连QT的书都只看完了一半,想问问大神,“检查信号与槽的连接方式是否正确”要怎么具体的弄啊?

           是检查connect()这类关键字的代码段吗?

有的时候在新添加了qt设计师类之后也会出现无法解析的问题,qmake一下就ok
------解决方案--------------------
引用:
Quote: 引用:

这个是信号和槽连接的问题,楼主检查是否添加了Q_OBJECT宏?检查一下信号与槽的连接方式是否正确

            您好,谢谢指点,我检查发现有定义Q_OBJECT这个宏,我刚刚接触QT,老师给了一个写好的大的工程给我调通,说实话连QT的书都只看完了一半,想问问大神,“检查信号与槽的连接方式是否正确”要怎么具体的弄啊?

           是检查connect()这类关键字的代码段吗?

就是看你定义的方法里面的参数是否一致就行,比如信号传入的参数是QString,槽的就应该也是QString,完全相同或比信号个数少都行,但是不能出现信号中不存在的
------解决方案--------------------
引用:
Quote: 引用:


就是看你定义的方法里面的参数是否一致就行,比如信号传入的参数是QString,槽的就应该也是QString,完全相同或比信号个数少都行,但是不能出现信号中不存在的


  谢谢指点,我可能要花些功夫才能检查出问题的所在啊,有无好的快速的关于信号与槽机制的博客讲义推荐啊,大神~~
http://blog.csdn.net/digu/article/details/1800109
  相关解决方案