ST17H26尽量避免switch语句

项目中某个函数由于使用了switch-case语句,当代码增加到某个程度的时候,已进入该函数,则程序跑飞。改成if结构,则问题解决。

switch(packType)
{
case CMD_RANDOM_NUMBER:
return CmdRandomResponse(appData);
break;


case CMD_MUTEX_AUTH:
//return CmdMutexAuthResponse(appData);
break;


case CMD_OPEN_DOOR:
return CmdOpenDoorResponse(appData);
break;


case CMD_UPDATE_TIME:
//return CmdUpdateTimeResponse(appData);
break;


case CMD_READ_TIME:
//return CmdReadTimeResponse(appData);
break;


case CMD_WRITE_SN:
return CmdWriteSnResponse(appData);
break;


case CMD_WRITE_KEY:
return CmdWriteKeyResponse(appData);
break;


case CMD_DEVICE_BOND:
return CmdDeviceBondResponse(appData);
break;


case CMD_DEVICE_UNBOND:
//return CmdDeviceUnbondResponse(appData);
break;


case CMD_READ_BOND_INFO:
//return CmdReadBondInfoResponse(appData);
break;


case CMD_READ_VERSION:
//return CmdReadVersionResponse(appData);
break;


default:
break;
}





if(packType == CMD_RANDOM_NUMBER)
{
return CmdRandomResponse(appData);
}
else if(packType == CMD_MUTEX_AUTH)
{
return CmdMutexAuthResponse(appData);
}
else if(packType == CMD_OPEN_DOOR)
{
return CmdOpenDoorResponse(appData);
}
else if(packType == CMD_UPDATE_TIME)
{
return CmdUpdateTimeResponse(appData);
}
else if(packType == CMD_READ_TIME)
{
return CmdReadTimeResponse(appData);
}
else if(packType == CMD_WRITE_SN)
{
return CmdWriteSnResponse(appData);
}
else if(packType == CMD_WRITE_KEY)
{
return CmdWriteKeyResponse(appData);
}
else if(packType == CMD_DEVICE_BOND)
{
return CmdDeviceBondResponse(appData);
}
else if(packType == CMD_DEVICE_UNBOND)
{
return CmdDeviceUnbondResponse(appData);
}
else if(packType == CMD_READ_BOND_INFO)
{
return CmdReadBondInfoResponse(appData);
}
else if(packType == CMD_READ_VERSION)
{
return CmdReadVersionResponse(appData);
}
else
{
return CMD_ERROR;
}





评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值