在使用QNX Momentics IDE开发C++代码时,出现以下的错误提示:ide
根据这个错误描述,只知道是C/C++ Problem,可是具体是什么缘由,编译器很吝啬,什么也没有告诉咱们,或许它本身都没法清楚的表达。好在从最近一次编译OK的代码到目前为止,改变的代码并很少,逐一排除后发现,是这两行代码致使发生了这样的问题,去掉后一切OK:函数
int value; cin >> value;
将int value改成char或string类型后没有编译错误,相似的,输入参数为float,double类型都会出现同样的问题。查询baidu,google和stackflow都没有找到相似的解决方案,或许使用QNX的人自己就太少了。最后没有办法,使用string来绕开这个问题,最后解决方案以下:google
string str; cin >> str; int value = atoi(str.data()); double = value = atof(str.data());
难道QNX下的C++不支持cin输入int,float,double吗?进入qnxide目录,查看istream的源代码,也有对int,float和double的>>操做符重载(若是没有重载应该编译报错并显示不存在的函数重载才对)。后来在google上看到一篇文章,说多是target系统的支持问题,由于个人QNX程序最后是部署到QNX系统上运行了,难道是这个缘由吗?Oh,MyGod!code
项目进度要紧,不去深究它了。ci
****************************************************************开发
2017/06/12 增长部署
****************************************************************get
今天又出现这样的问题,通过检查,发现是项目引用的lib文件没有生成,致使依赖的lib库文件找不到。还在能够到console控制台中找到错误的缘由所在,解决了这个问题。看来发生C++ Problem的问题处理目标平台的关系,还有编译>连接>make之间的缘由。编译器