东北熊孩子
2017-01-16 01:28
采纳率: 0%
浏览 1.0k

vc++ 编写DLL时遇到一个很诡异的参数问题

大神们帮帮忙,今天遇到一个问题:
我写了一个DLL,提供了一些接口,其他模块调用我的接口,我接口例如:
login_xxx(const wchar_t* strAcc,const wchar_t* strPwd,wchar_t*strId,wchar_t*strTokenid);

当其他模块调用后,当我调用接口:
refreshtokenid(const wchar_t*strTokenId,const wchar_t*strId,INT*nTime);
当我把第一个接口返回的参数赋值给成员变量类型为wstring
然后传入第二个接口,这样参数会显示badptr 大神们支支招....

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

6条回答 默认 最新

  • nanjun520 2017-01-16 01:34

    应该是释放了吧,外面开辟一个空间,深拷贝一次,

    打赏 评论
  • oyljerry 2017-01-16 01:35

    对应参数变量是不是已经释放了。导致第二个函数访问出错了

    打赏 评论
  • 东北熊孩子 2017-01-16 02:43

    没有,是成员变量作为参数传入的。

    打赏 评论
  • 枫舞的季节 2017-01-16 02:55

    你如果在releas下调试,如果优化了,可能看不到符号真正的值。

    先看看debug下有没有问题。然后再试 release 下。

    打赏 评论
  • shen_wei 2017-01-16 07:06

    建议还是单步调试一下。。看看出错的关键地方在哪里。。或者上关键部分代码。。。

    打赏 评论
  • yangbo50304 2017-01-18 06:44

    rebuild所有依赖的库试试!!!

    打赏 评论

相关推荐 更多相似问题