当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 6 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 一个关于vector的奇怪问题
帖子发表于 : 2007-12-22 19:10 

注册: 2006-05-26 13:22
帖子: 30
送出感谢: 0 次
接收感谢: 0 次
一个在ubuntu5.10(非虚拟机)下编写的运行正确的c++代码,放到ubuntu7.10(运行在VMware虚拟机中)中运行时出错:
经过GDB详细检测发现是在调用一个函数a时出错:

void a(char *fname, vector<element_type> &T)
{
......

}
......
a(fname,T);
.......

在ubuntu5.10下调用a(fname,T)后的结果是正确的,但在ubuntu7.10下调用a(fname, T)后发现T不是原来那个T了,T.size()成了一个非常大的数59734951,而且T和fname的地址也发生了变化(而在ubuntu5.10下T和fname的地址在调用a(fname,T)前后都是不变的),。

百思不得其解!请问大虾这个问题何解?

谢谢!


最后由 cxdream 编辑于 2007-12-22 23:41,总共编辑了 1 次

页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2007-12-22 20:23 
头像

注册: 2007-03-13 17:26
帖子: 2254
送出感谢: 0 次
接收感谢: 1
你说的是直接复制二进制文件过去执行?


升级了库不保证二进制兼容


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2007-12-22 20:31 
头像

注册: 2007-03-13 17:26
帖子: 2254
送出感谢: 0 次
接收感谢: 1
重复了


最后由 windwiny 编辑于 2007-12-22 21:21,总共编辑了 1 次

页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2007-12-22 20:33 
头像

注册: 2007-03-13 17:26
帖子: 2254
送出感谢: 0 次
接收感谢: 1
重复了


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2007-12-22 21:37 

注册: 2006-05-26 13:22
帖子: 30
送出感谢: 0 次
接收感谢: 0 次
windwiny 写道:
你说的是直接复制二进制文件过去执行?
----------------------------------------------------------------
no! 是把源代码(cpp)在新系统下重新编译后执行。

升级了库不保证二进制兼容


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2007-12-23 21:32 

注册: 2007-01-22 10:22
帖子: 55
送出感谢: 0 次
接收感谢: 0 次
你贴的东西太少了


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 6 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译