2015-10-19 3 views
0

кодC++, VS2005 Пожалуйста, помогите мне решить эту ошибку компиляции

BOOL CGrAllObjects::ReorderObj(CGrObject* pGrFind,int ixObjNewIx) 
    { 

     int nSubCode,nLyrCode=pGrFind->GetLayerCode(nSubCode); 
     CGrObject* pGrObject; 
     CGrObjectArray* 
     pGrObjectArray=GetObjArrayFromCode(nLyrCode,nSubCode); 

     if(!pGrObjectArray) return FALSE; 

     for(int ixObj=pGrObjectArray->GetSize()-1; ixObj>=0; ixObj--) 

     {  pGrObject=pGrObjectArray->GetAt(ixObj); 

       if(pGrObject==pGrFind) break; 

     } 

     if(ixObj<0) return FALSE; 

     if(ixObj!=ixObjNewIx) 

     {  pGrObjectArray->RemoveAt(ixObj); 

       pGrObjectArray->InsertAt(ixObjNewIx,pGrFind); 
     } 

     return TRUE; 
} 






Error: 1>c:\xxx\xxx\xxxx\xxxx\xxxx\xxxxx\xxxx.cpp(359) : error C2065: 
'ixObj' : undeclared identifier 

ответ

0

for(int ixObj ... переменная «ixObj» только определенный в рамках цикла for и не известен за пределами.

Определить целое число перед циклом, и удалите decalration из 'для':

int ixObj; 
for(ixObj=... 
+0

Спасибо Майкл. Это сработало. – Rohit

Смежные вопросы