示例
int getNum(){
return 5;
}

void main( int argc, char* argv[]) {
while( a = getNum() ) {
cout << "A is still 5";
}
}

解决方案
如果赋值有错误,请更改为比较。否则,在条件语句外执行赋值。
int getNum(){
return 5;
}

void main( int argc, char* argv[]) {
int a = 5;
while( a == getNum() ) {
cout << 
"A is still 5";
}
}