我的代码遇到了问题,请参阅以下代码片段:
bool flag = false;
if(flag==false)
{
int var=0;
flag=true;
}
if(flag==true)
{
var=10;
}
在这种情况下 var 被标记为 undefined 并且 CCS 生成一个错误,这是完全正确的。只要在 if 案例中定义了一个变量,它就不会被外界知道。当然,您可以在这种情况下重写代码。但是在我的实际代码中,我必须从具有非默认构造函数的类中构建一个对象,并且除了使用 if 情况之外无法解决(至少我不知道如何解决)
我的实际代码:
SelectedSocket2=VCRT_selectset(&MasterSocket,1,-1);
if((SelectedSocket != VCRT_SOCKET_ERROR) && (SelectedSocket != 0))
{
ClientSocket=accept(MasterSocket, NULL, NULL);
CStreamer Streamer(ClientSocket);
CRtspSession RtspSession(ClientSocket,&Streamer);
flag=true;
}
//Streamer, RtspSession are outside unknown and CCS generates an error
有什么想法可以解决问题或欺骗编译器吗?