第一个类 
类1
{
  int i=0,j=0
  while(1)
  {
     if(...)
         j++;
     i++
     if(...)
     break;
  }
  this->number = i-j;
}
类2
{
   类1 file;
   this->numofFile = file.number;
}
可以运行,但是在我的输出日志里面类1中number为4
可是传递到类2中 值就变了,有的时候是1,有的时候是28,有的时候是一个很大的数字
这些变量我都是用的INT型的,高手指点这是怎么回事

解决方案 »

  1.   

    类1 file;
       this->numofFile = file.number;
    看你这里的代码,这个number值当然不是你想要的因为你并没有 int i=0,j=0
      while(1)
      {
         if(...)
             j++;
         i++
         if(...)
         break;
      }
    进行这些操作阿你在调用this->numofFile = file.number;之前要先做这些操作你可以把这些操作放在类1的一个函数里面在调用赋值之前,先做这些操作