Изучение возможностей C 11 в Visual Studio 2012
Поскольку с нетерпением ждут Visual Studio 2012, преемника VS2010, разработчики с нетерпением ждут чтобы узнать, какие функции C 11 он предлагает.
Новые функции C 11 в Visual Studio 2012
Хотя Visual Studio 2010 обеспечивала предварительную поддержку C 11, Visual Studio 2012 превосходит его, реализуя дополнительные функции C 11, в том числе:
- Расширенные ссылки на Rvalue: Обновляет ссылки на rvalue до версии 2.1.
- Расширенные лямбда-выражения : Расширена поддержка лямбда-выражений до версии 1.1.
- Усовершенствования Decltype: Улучшен decltype до версии 1.1. (Однако он еще не доступен в предварительной версии для разработчиков.)
- Уточнение выравнивания: представляет улучшенную поддержку выравнивания, хотя она еще не завершена.
- Выполнено полностью - Типизированные перечисления: обеспечивает полноценную поддержку строго типизированных перечислений.
- Предварительно объявленные перечисления: включает предварительное объявление перечислений.
- Стандартный макет и тривиальные типы: облегчает идентификацию и использование стандартного макета и тривиальных типов.
- Атомарные операции: включает поддержку атомарных операций.
- Расширенное сравнение и обмен: расширяет возможности сравнения и обмена.
- Двунаправленные ограничения: вводит двунаправленные ограничения для синхронизации памяти.
- Зависимость от данных Порядок: позволяет упорядочивать зависимости данных в многопоточных приложениях.
- Цикл For на основе диапазона: предоставляет синтаксический сахар для перебора контейнеров.
Дополнительные функциональные возможности C 11 в компиляторе Visual C, ноябрь 2012 г. CTP
Выпуск CTP от Microsoft в ноябре 2012 г. для компилятора Visual C еще больше расширяет возможности C 11 в Visual Studio 2012:
- Единая инициализация: обеспечивает упрощенную и согласованную инициализацию переменных.
- Списки инициализаторов: упрощает инициализацию нескольких элементов с помощью одного выражения.
- Шаблоны с переменным числом аргументов: поддерживает шаблоны, которые могут принимать переменное количество аргументов.
- Аргументы шаблона функций по умолчанию: позволяет указывать значения аргументов по умолчанию для шаблонов функций.
- Делегирование конструкторов: представлены конструкторы делегирования для улучшения организации кода.
- Операторы явного преобразования: позволяют программистам определять и контролировать поведение явного преобразования.
- Необработанные строки: поддерживаются строки без escape-последовательностей.