想不通,这for有错吗?
CVector3 m_CVec3ActorPosition= m_Actor->GetActorPosition();
for( int i = 0;i<POSITIONNUM; ++i )
{
if ( m_CVec3ActorPosition.z>m_sRoadPosition[i].TansPos.z-ONE*0.5
&&m_CVec3ActorPosition.z<m_sRoadPosition[i].TansPos.z+ONE*0.5
&&m_CVec3ActorPosition.x>m_sRoadPosition[i].TansPos.x-ONE*0.5
&&m_CVec3ActorPosition.x<m_sRoadPosition[i].TansPos.x+ONE*0.5
)
{
if (m_bOneTime)
{
m_bOneTime = false;
//RoadControlRend(m_sRoadPosition[i].TansPos/*,i*/);
PA_TRACE("-----RoadControlRend(m_sRoadPosition[%d].TansPos/*,i*/);-------\n",i);
}
}
else
{
m_bOneTime = true;//让他只执行一次
}
} for
[解决办法]
C语言不支持for循环内声明变量(int i=0),C99或者C++才支持这种方式。