J'essaie de compiler mitk sur ubuntu et j'ai eu cette erreur:
erreur: cette instruction peut passer par [-Werror = implicit-fallthrough =]
Ici, il y a une partie du code:
/** Get memory offset for a given image index */
unsigned int GetOffset(const IndexType & idx) const
{
const unsigned int * imageDims = m_ImageDataItem->m_Dimensions;
unsigned int offset = 0;
switch(VDimension)
{
case 4:
offset = offset + idx[3]*imageDims[0]*imageDims[1]*imageDims[2];
case 3:
offset = offset + idx[2]*imageDims[0]*imageDims[1];
case 2:
offset = offset + idx[0] + idx[1]*imageDims[0];
break;
}
return offset;
}
Je serais reconnaissant pour toute aide s'il vous plaît.
Vous devez ajouter un saut de mot clé à chaque déclaration de cas, si vous ne le faites pas, le code s'exécutera à partir de la casse à laquelle il correspond et continuera à répondre à la
pause;
par exemple: Si VDimension = 4, alors le code s'exécutera du cas 4 => continuez au cas 3 => continuez au cas 2 puis coupez. Cela signifie qu'il exécutera les commandes ci-dessous:
offset = offset + idx[3]*imageDims[0]*imageDims[1]*imageDims[2];
offset = offset + idx[2]*imageDims[0]*imageDims[1];
offset = offset + idx[0] + idx[1]*imageDims[0];
break;
return offset;
Je pense que votre code devrait être:
/** Get memory offset for a given image index */
unsigned int GetOffset(const IndexType & idx) const
{
const unsigned int * imageDims = m_ImageDataItem->m_Dimensions;
unsigned int offset = 0;
switch(VDimension)
{
case 4:
offset = offset + idx[3]*imageDims[0]*imageDims[1]*imageDims[2];
break;
case 3:
offset = offset + idx[2]*imageDims[0]*imageDims[1];
break;
case 2:
offset = offset + idx[0] + idx[1]*imageDims[0];
break;
}
return offset;
}