标题:怪异问题 在线等候回答
只看楼主
freeflywyx
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-6-23
 问题点数:0 回复次数:7 
怪异问题 在线等候回答
我自己写了个比较大的struct里面有自己写的类也有int flag
我初始化的时候赋值给flag的时候是0
但是我运行一下后flag的值是-858993460
请问这个是怎么回事?
要怎么解决
搜索更多相关主题的帖子: 怪异 flag 赋值 int 
2008-06-23 21:42
zjl138
Rank: 1
等 级:新手上路
威 望:1
帖 子:788
专家分:0
注 册:2007-11-12
得分:0 
struct里面有自己写的类也有int flag?
这句怎么理解?

你可以发你的出错代码出来看一下.

顺便发一下错误提示

i like linux...
2008-06-23 21:47
freeflywyx
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-6-23
得分:0 
没有语法错误
struct vector3m
{
public:
    int id;
    point3d stress;
    vector3d v_max,v_mid,v_min;
         int z_style;
    point3d p0,p1,p2,p3,p4,p5,p6,p7;
    vector3m(int id,
    double stress_max,double stress_mid,double stress_min,
    double v_maxx,double v_maxy,double v_maxz,double v_midx,double v_midy,double v_midz,double v_minx,double v_miny,double v_minz,
    int z_style,
     double p0x,double p0y,double p0z
     double p1x,double p1y,double p1z,
     double p2x,double p2y,double p2z,
     double p3x,double p3y,double p3z,
     double p4x,double p4y,double p4z,
     double p5x,double p5y,double p5z,
     double p6x,double p6y,double p6z,
     double p7x,double p7y,double p7z):
     stress(stress_max,stress_mid,stress_min),
     v_max(v_maxx,v_maxy,v_maxz),v_mid(v_midx,v_midy,v_midz),v_min(v_minx,v_miny,v_minz),
     p0(p0x,p0y,p0z),p1(p1x,p1y,p1z),p2(p2x,p2y,p2z),p3(p3x,p3y,p3z),p4(p4x,p4y,p4z),
             p5(p5x,p5y,p5z),p6(p6x,p6y,p6z),p7(p7x,p7y,p7z) {}
};

这个就是我的结构体
程序中还建立了一个容器vector<vector3m> r_vct_vector3m

初始化一组数据后
vector3m tmp_3m(id,
              stress_max, stress_mid,stress_min,
              v_maxx, v_maxy,v_maxz,v_midx, v_midy,v_midz, v_minx, v_miny, v_minz,
              z_style,
              p0x, p0y, p0z,
              p1x, p1y, p1z,
              p2x, p2y, p2z,
              p3x, p3y, p3z,
              p4x, p4y, p4z,
              p5x, p5y, p5z,
              p6x, p6y, p6z,
              p7x, p7y, p7z);
 
vct_vector3m.push_back(tmp_3m);/////id=9  和 z_style=0
这步后里面的id  和 z_style的值变成了-858993460
2008-06-23 21:56
freeflywyx
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-6-23
得分:0 
不是很熟
所以感觉问题很怪
2008-06-23 21:58
zjl138
Rank: 1
等 级:新手上路
威 望:1
帖 子:788
专家分:0
注 册:2007-11-12
得分:0 
你这样初始化啊:
vector3m tmp_3m(id,
              stress_max, stress_mid,stress_min,
              v_maxx, v_maxy,v_maxz,v_midx, v_midy,v_midz, v_minx, v_miny, v_minz,
              z_style,
              p0x, p0y, p0z,
              p1x, p1y, p1z,
              p2x, p2y, p2z,
              p3x, p3y, p3z,
              p4x, p4y, p4z,
              p5x, p5y, p5z,
              p6x, p6y, p6z,
              p7x, p7y, p7z);

不是要给具体数值吗?

你这样试一下:
vector3m tmp_3m(9,......
..................
  );

i like linux...
2008-06-23 22:08
freeflywyx
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-6-23
得分:0 
id,
              stress_max, stress_mid,stress_min,
              v_maxx, v_maxy,v_maxz,v_midx, v_midy,v_midz, v_minx, v_miny, v_minz,
              z_style,
              p0x, p0y, p0z,
              p1x, p1y, p1z,
              p2x, p2y, p2z,
              p3x, p3y, p3z,
              p4x, p4y, p4z,
              p5x, p5y, p5z,
              p6x, p6y, p6z,
              p7x, p7y, p7z
这些参数都已经赋值了  
这里我省略了没有写出来而已
问题就是id  z_style 对应的值不对(本来应该是9和0的)同时变成了-858993460

其他值都对  
所以觉得很奇怪
2008-06-23 23:23
leius
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-6-24
得分:0 
你初始化的时候没给id和z_style赋值
你可以加上
{
this->id=id;
this->z_style=z_style;
}
也可以同其它初始化一样
2008-06-24 01:21
freeflywyx
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-6-23
得分:0 
thanks
结构体里面的问题
非常感谢
2008-06-24 10:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-220778-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.389375 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved