从结构导致bool“错误:表达式必须具有类类型”

时间:2010-10-22 19:01:29

标签: c++ pointers struct boolean compiler-errors

我有一个定义为

的结构
struct sData{ 
idx * id; 
int * stime; 
bool * result;  
unsigned int N;
};

然后在

中使用它的代码
numeric compute(numeric e, sData swabs){
  numeric cache=0.0;
  int sid=0;
  while(sid<swabs.N){
    if(swab.result[sid]) 
      cache += log(e);
    else cache += log(1.0-e);
    sid += 1;
  }
  return cache;
}

但是在编译时我得到了错误。

  

paug_cuda.cu(602):错误:表达式必须具有类类型

这是什么意思。什么班级类型?我在逻辑表达式中使用bool。还有什么可以做到这一点。我错过了什么?

1 个答案:

答案 0 :(得分:4)

swab - &gt; swabs:)

错误意味着您编写了类似X.Y的内容,而X不是类/结构的实例。