gpt4 book ai didi

c++ - libpqxx 在 DEBUG 模式下抛出异常

转载 作者:行者123 更新时间:2023-11-30 01:59:52 26 4
gpt4 key购买 nike

我有一个使用 libpqxx 的 MFC 项目。所有设置均为默认设置。

Release模式如我所料正常工作。但是当我切换到 Debug模式时,它显示异常并显示调试断言:

最有趣的是,如果我使用 Shared DLL 而不是 Static(当然是在 Debug 上)它就可以工作!

基本上,使用静态库进行调试会显示此异常/错误。如果我切换到共享 DLL,它会再次工作。当然,我可以将共享用作调试,将静态用作发布,但是这是正确的做法吗

注意:这个项目是基础的和新鲜的。我没有更改配置管理器中的任何配置。

有什么建议吗?

最佳答案

好吧,我不确定 libpqxx 是否使用 MFC(哪个?)。我怀疑您正在从一个堆中分配一些内存,然后从另一个堆中取消分配它。混合 MFC 版本以及 MFC 的静态/非静态混合将导致此断言。

不要将其视为在 Release 版本上工作!它只是没有为自己辩护(即现在显示任何断言消息)。最好的办法是找出此问题的原因,第一个方法是查找调用堆栈(在此断言对话框中点击重试)。

看看,如果 libpqxx 依赖于 MFC,或者它禁止混合 MFC 的静态版本。您可以查看 libpqxx 的文档,和/或使用 Dependency Walker 查看库是否正在使用 MFC。

关于c++ - libpqxx 在 DEBUG 模式下抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15726841/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com