帮我看看这段宏定义怎么问题?
#define SO_ENGINE_OUTPUT(outputName,type,code) \
do {if (outputName.isEnabled()){ \
for (int engouti = 0; \
engouti < outputName.getNumConnections();engouti++){ \
type *engouttemp = (type *) outputName[engouti]; \
if (!engouttemp->isReadOnly()){ \ engouttemp->code;}} } } while(0)