Когда я пишу макрос на C ++, он обрабатывает ошибку с «объявлением нет типа хранилища», и это мой код, что с ним не так?Если я реализую с функцией, это работает хорошо.Это меня сомневается.
#define FLAG_CLEAR_MUL_BIT(op,beg,end) do{\
long _dwFlag = 0;\
for (int _i = 0; _i < end - beg;++_i)\
{\
_dwFlag |= (1 << _i);\
}\
_dwFlag = _dwFlag << beg;\
_dwFlag = ~_dwFlag;\
op = op & _dwFlag;\ // preprocessing wrong:This declaration has no storage type,if impletment with inline function,it works well
}