社区
C++ 语言
帖子详情
关于使用lib文件,类型冲突问题求解决。
kevinh
2008-03-31 10:42:08
描述:项目正在使用从别个厂商买到的静态库文件和头文件read.lib,我们在开发过程中遇到使用vector<double>就crash的问题。后来分析有可能是与
lib文件里的某个已经使用的类型冲突了。
这已经成了目前开发的一个比较郁闷的问题了,大虾们有没有什么好的建议?
...全文
319
15
打赏
收藏
关于使用lib文件,类型冲突问题求解决。
描述:项目正在使用从别个厂商买到的静态库文件和头文件read.lib,我们在开发过程中遇到使用vector就crash的问题。后来分析有可能是与 lib文件里的某个已经使用的类型冲突了。 这已经成了目前开发的一个比较郁闷的问题了,大虾们有没有什么好的建议?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
「已注销」
2008-04-01
打赏
举报
回复
谢谢各位了,见者有分
coanororc
2008-04-01
打赏
举报
回复
这个问题我也遇到过,当时因为调用lib函数,但函数参数的类型不匹配,具体情况是这样的:
lib文件中定义的函数参数是一个32bit的变量,但我在自己项目中用的是一个64bit的变量,
导致名字不能解析或者内存读冲突,将自己的64bit强制转换后问题得以解决。
不知道能不能对LZ有帮助,楼主可以考虑下这当面的原因。
Supper_Jerry
2008-04-01
打赏
举报
回复
[Quote=引用 11 楼 kevinh 的回复:]
朋友跟我说可能是lib库使用的stl库和我现在的stl版本不同,导致内存上有问题。
[/Quote]
很可能
「已注销」
2008-04-01
打赏
举报
回复
我现在解决 死机 问题的办法就是 用vector<long double>替换vector<double>,还凑合
「已注销」
2008-04-01
打赏
举报
回复
朋友跟我说可能是lib库使用的stl库和我现在的stl版本不同,导致内存上有问题。
barenx
2008-03-31
打赏
举报
回复
如果这样都有问题,建议楼主开调试器单步跟踪。。。
barenx
2008-03-31
打赏
举报
回复
[Quote=引用 2 楼 ttkk_2007 的回复:]
std::vector <double>
[/Quote]
正解
不想低调
2008-03-31
打赏
举报
回复
使用名字空间
ouyh12345
2008-03-31
打赏
举报
回复
在某个namespace里使用lib,避免命名冲突
csdn5211
2008-03-31
打赏
举报
回复
加上名字空间
ttkk_2007
2008-03-31
打赏
举报
回复
std::vector <double>
sheenl
2008-03-31
打赏
举报
回复
改用deque<double>
ttkk_2007
2008-03-31
打赏
举报
回复
你这样用都有问题,肯定不是冲突了,找找别的原因吧
「已注销」
2008-03-31
打赏
举报
回复
[Quote=引用 6 楼 liveforme 的回复:]
引用 2 楼 ttkk_2007 的回复:
std::vector <double>
[/Quote]
我们是这么用的,
有人遇到过这种情行吗
liveforme
2008-03-31
打赏
举报
回复
[Quote=引用 2 楼 ttkk_2007 的回复:]
std::vector <double>
[/Quote]
lib
cmt.
lib
和
lib
cmtd.
lib
链接库
冲突
错误的
解决
方案
在同一个项目中,所有的源
文件
必须链接相同的C运行时库。如果某一
文件
用了Multithreaded DLL版本,而其他
文件
用了Single-Threaded或者Multithreaded版本的库,也就是说用了不同的库,就会导致这个警告的出现。 总之,一句话,
lib
之间有
冲突
。需要删除导入的一些
lib
s 版 本 类 型
使用
的
lib
rary 被忽略的
lib
rary R ...
使用
Qtcreator运行
文件
时报错error: LNK1104: 无法打开
文件
“qtmaind.
lib
”(本次情况与anaconda的
冲突
)
使用
Qtcreator运行
文件
时报错error: LNK1104: 无法打开
文件
“qtmaind.
lib
”(本次情况与anaconda的
冲突
) 因为电脑上装有anaconda,内有pyqt5,并且我把anaconda放入了环境变量中。现在课内要
求
使用
基于C++的qt写一个小作业,于是重新下载了一个qt。出现了两个程序
冲突
的
问题
。摸索了一个钟头才发现原因,应该是qtcreator中的两个kits发生了
冲突
。 在 工具->选项->Kits->Qt Vertions中,将检测出的anaconda
MT,MTd,MD,MDd详解
解决
MSVCRTD.
LIB
和
LIB
CMTD.
LIB
冲突
代码调试过程中,挂在基本库函数中,需要考虑是否缺失MSVCRTD.
lib
等系统库。 当遇到MSVCRTD.
LIB
和
LIB
CMTD.
LIB
的
冲突
时,一般是因为代码编译时代码生成选择c/c++的运行库版本不一致; 于是搞明白了MT,MTd,MD,MDd的区别,
问题
出现的根源算是明白了。(
lib
c.
lib
找不到也可以在这里找到答案) 先用简单的方式概括一下原因: 项目-属性-c/c++-代码生成-运行库的选择 选择 MT会用到
LIB
CMT.
LIB
MTD会用到
LIB
CMTD.
LIB
选择 MD会用...
Keil
使用
技巧:工程中包含
lib
文件
时,编译出现警告,
lib
内部函数无声明或实现
问题
描述: 因为添加
lib
文件
,编译提示的警告包含以下几种: *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL
解决
办法: ...
是tomcat的
lib
文件
夹jar包和项目的
lib
文件
下的jar包
冲突
了
Tomcat中catalina.jar和jasper.jar都有AnnotationProcessor接口,所以运行时,就出错了:java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor。 把项目下
lib
文件
下和tomcat的jar的重复的全部删除。 注意,如果你是先建f
C++ 语言
64,849
社区成员
250,501
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章