• 7695阅读
  • 9回复

QT调用VC动态库的问题 [复制链接]

上一主题 下一主题
离线duduqq
 

只看楼主 倒序阅读 楼主  发表于: 2011-01-11
我用QT调用一个VC生成的动态库,打印出里面的一些数据,会无缘无故的给改变了,但如果我用VC去调用这个动态库,打印出来的数据确是正确的,有哪位遇到过这样的问题

就像我定义了一个变量int m_nNum ;
在构造函数中把这个值赋为m_nNum  = 0 ;
但我在另外一个函数中再次用时,打印这个值确变成了一个很大的负数。

但这个库如果我在VC上调用,打印出来的值确又是0的。


我是用QT Creator来做的,所以也没法调试到VC的库。
哪位大侠能提供个思路。
[ 此帖被duduqq在2011-01-11 13:39重新编辑 ]
离线XChinux

只看该作者 1楼 发表于: 2011-01-11
还有呢?
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线duduqq

只看该作者 2楼 发表于: 2011-01-11
就像我定义了一个变量int m_nNum ;
在构造函数中把这个值赋为m_nNum  = 0 ;
但我在另外一个函数中再次用时,打印这个值确变成了一个很大的负数。

但这个库如果我在VC上调用,打印出来的值确又是0的。
离线jdwx

只看该作者 3楼 发表于: 2011-01-11
还有Debug可用!
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线duduqq

只看该作者 4楼 发表于: 2011-01-11
在QT上不能调试到VC的库啊
离线jdwx

只看该作者 5楼 发表于: 2011-01-11
你不是QT调用vc的Dll,exe是QT的,dll是VC的用VC调啊!看看dll输出正确吗?
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线jdwx

只看该作者 6楼 发表于: 2011-01-11
实在不行就装一个ForVC2008的QT,就全能调试了。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线duduqq

只看该作者 7楼 发表于: 2011-01-11
我用QT做了一个EXE去调用VC的DLL,数值会错,
我又做了一个VC的去调用这个DLL,数值就是对的,
我现在想知道为什么QT调用会出现这个的问题?
离线XChinux

只看该作者 8楼 发表于: 2011-01-11
不是因为传递的参数进行类型转换的原因吧?
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线duduqq

只看该作者 9楼 发表于: 2011-01-11
回 8楼(XChinux) 的帖子
不关值传递的事,我在QT只是调用库和函数,m_nNum这个变量只在库中使用,外部不会去改变和引用这个值。
快速回复
限100 字节
 
上一个 下一个