В настоящее время я тестирую ноябрьскую CTP-версию для Visual Studio 2012 и натолкнулся на интересную проблему: предписано ли это стандартом для строго типизированных перечислений enum
а также struct
/class
ключевые слова должны быть в одной строке или это ошибка в реализации, о которой следует сообщать в Microsoft?
Это компилирует:
enum struct name : type { ...
Это не так (C2332)
enum
struct name : type { ...
РЕДАКТИРОВАТЬ: как предположил Джеймс, это ошибка в реализации и было сообщено Microsoft
Да, это, несомненно, ошибка. Новые строки не имеют значения после предварительной обработки.
Это отслеживается следующей проблемой в Microsoft Connect (для OP: Спасибо за открытие этой ошибки.):
Если эта ошибка важна для вас, сообщите об этом в Microsoft Connect. Обратите внимание, что существует тривиальный обходной путь: не ставьте новую строку между enum
а также struct
ключевые слова.
Других решений пока нет …