Когда я пишу макрос с C ++, он выдает ошибку типа «объявление не имеет типа хранения» - PullRequest
0 голосов
/ 27 августа 2018

Когда я пишу макрос на 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
}

1 Ответ

0 голосов
/ 27 августа 2018

это может быть ошибка редактора vs2017, я комментирую код и снова пишу его в другом месте, он скомпилирован !!так волшебно.

...