Многим приложениям для правильной работы требуются распространяемые пакеты библиотеки времени выполнения Visual C ++. Эти пакеты часто устанавливаются независимо от приложений, что позволяет нескольким приложениям использовать пакет, при этом необходимо установить его только один раз. Эти распространяемые пакеты Visual C ++ и пакеты среды выполнения в основном устанавливаются для стандартных библиотек , используемых многими приложениями. [3]
Предшественник Visual C ++ назывался Microsoft C / C ++ . Также были Microsoft QuickC 2.5 и Microsoft QuickC для Windows 1.0. Компилятор Visual C ++ по-прежнему известен как Microsoft C / C ++, а на момент выпуска Visual C ++ 2015 Update 2 используется версия 14.0.23918.0.
16-битные версии
Microsoft C 1.0, основанной на Lattice C , был первым продукт компании Microsoft C в 1983 году не был K & R C .
В C 2.0 добавлена поддержка больших моделей.
C 3.0 была первой версией, разработанной внутри Microsoft. [4] Эта версия предполагала совместимость с K&R и более поздним стандартом ANSI. Он использовался внутри Microsoft (для разработки Windows и Xenix ) в начале 1984 года. Он был выпущен как продукт в 1985 году.
В C 4.0 добавлены оптимизации и CodeView , отладчик на уровне исходного кода.
В C 5.0 добавлена оптимизация циклов и поддержка «огромной модели памяти» ( массивы более 64 КБ). Microsoft Fortran и первый 32-битный компилятор для 80386 также были частью этого проекта.
Версия C 5.1, выпущенная в 1988 г., позволяла компилировать программы для OS / 2 1.x.
C 6.0 выпущен в 1989 году. Он добавил среду разработки Programmer's Workbench , глобальный анализ потока, браузер исходного кода и новый отладчик, а также включил дополнительный интерфейс C ++ . [5]
C / C ++ 7.0 был выпущен в 1992 году. Добавлена встроенная поддержка C ++ и MFC (Microsoft Foundation Class Library) 1.0. [6] Поддержка OS / 2 была прекращена.
Visual C ++ 1.0, который включал MFC 2.0, был первой версией «Visual» C ++, выпущенной в феврале 1993 года. Он был совместим с Cfront 2.1 [7] и был доступен в двух редакциях: [1]
Стандарт: заменен QuickC для Windows.
Professional: заменен C / C ++ 7.0. Включена возможность создания приложений DOS и Windows, оптимизирующий компилятор , профилировщик исходного кода и Windows 3.1 SDK. [7] Также был включен Phar Lap 286 DOS Extender Lite. [8]
Visual C ++ 1.5 был выпущен в декабре 1993 года, включал MFC 2.5 и добавлял поддержку OLE 2.0 и ODBC в MFC. [9] Это была первая версия Visual C ++, выпущенная только на CD-ROM .
Visual C ++ 1.51 и 1.52 были доступны как часть службы подписки.
Visual C ++ 1.52b похож на 1.52, но не включает Control Development Kit.
Visual C ++ 1.52c был исправленной версией 1.5. Это последняя и, возможно, самая популярная платформа разработки для Microsoft Windows 3.x. Он доступен через сеть разработчиков Microsoft .
Строго 32-битные версии
Visual C ++ 1.0 (исходное название: 32-разрядная версия Visual C ++) была первой версией для 32-разрядной разработки для архитектуры Intel 386 . [10] Хотя он был выпущен вместе с 16-разрядной версией 1.5, он не включал поддержку OLE2 и ODBC. Он также был доступен в пакете под названием Visual C ++ 16/32-bit Suite, который включал Visual C ++ 1.5. [11]
Visual C ++ 2.0, который включал MFC 3.0, был первой версией, которая была только 32-разрядной. Во многих отношениях эта версия опередила свое время, поскольку Windows 95 , тогда под кодовым названием «Чикаго», еще не была выпущена, а Windows NT занимала лишь небольшую долю рынка. Microsoft включила и обновила Visual C ++ 1.5 как часть выпусков 2.x до 2.1, которые включали Visual C ++ 1.52, а также 16-разрядную и 32-разрядную версии Control Development Kit (CDK). Visual C ++ 2.x также поддерживает разработку Win32s . Он доступен через сеть разработчиков Microsoft . Существовала версия Visual C ++ 2.0 RISC Edition для процессоров MIPS и Alpha , а также кроссплатформенная версия для Macintosh.( Набор команд 68000 ). [12]
Visual C ++ 2.1 и 2.2 были обновлениями для 2.0, доступными по подписке.
Visual C ++ 4.0, выпущенный 11 декабря 1995 г. [13], представил среду разработки Developer Studio. Его новаторская в то время мозаичная компоновка неперекрывающихся панелей - панель навигации, комбинированная панель отладчика на уровне редактора и исходного кода и панель вывода консоли [14] - продолжается в линейке продуктов Visual Studio (по состоянию на 2013 год). Visual C ++ 4.0 включал MFC 4.0, был разработан для Windows 95 и Windows NT. Чтобы обеспечить поддержку устаревших проектов (Windows 3.x / DOS), 4.0 поставляется вместе с установочным компакт-диском Visual C ++ 1.52. Обновления, доступные по подписке, включали Visual C ++ 4.1, поставляемый с Microsoft Game SDK (позже выпущенный отдельно как DirectX SDK), и Visual C ++ 4.2. Версия 3.0 была пропущена для достижения паритета версий между Visual C ++ 4.0 и MFC 4.0.[15]
Visual C ++ 4.2 не поддерживает разработку для Windows 3.x ( Win32s ). [16] Это была последняя версия с доступной кроссплатформенной версией для Macintosh, и она отличалась от версии 2.x тем, что также позволяла компиляцию для набора команд PowerPC .
Visual C ++ 5.0, который включал MFC 4.21 и был выпущен 28 апреля 1997 г. [13], был крупным обновлением по сравнению с 4.2. [17] Доступно в четырех редакциях: Learning, [18] Professional, [19] Enterprise, [20] и RISC. [21]
Visual C ++ 6.0 (широко известный как VC6), который включал MFC 6.0, был выпущен в 1998 году. [22] [23] Выпуск был несколько спорным, поскольку он не включал ожидаемого обновления MFC. Visual C ++ 6.0 по-прежнему довольно популярен и часто используется для поддержки устаревших проектов. Однако есть проблемы с этой версией в Windows XP, особенно в режиме отладки (например, значения статических переменных не отображаются). Проблемы с отладкой можно решить с помощью патча, который называется «Visual C ++ 6.0 Processor Pack». [24] Номер версии: 12.00.8804
Visual C ++ .NET 2002 (также известный как Visual C ++ 7.0), который включал MFC 7.0, был выпущен в 2002 году с поддержкой генерации кода времени компоновки и отладки проверок времени выполнения, .NET 1.0, Visual C # и Managed C ++ . В новом пользовательском интерфейсе использовались многие горячие клавиши и условные обозначения Visual Basic , что и объясняет его непопулярность среди разработчиков C ++. [ необходима ссылка ] Номер версии: 13.00.9466
Visual C ++ .NET 2003 (также известный как Visual C ++ 7.1), который включал MFC 7.1, был выпущен в 2003 году вместе с .NET 1.1 и являлся крупным обновлением Visual C ++ .NET 2002. Он считался патчем для Visual C ++ .NET. 2002. Соответственно, англоязычная обновленная версия Visual Studio .NET 2003 доставлялась владельцам англоязычной версии Visual Studio .NET 2002 по минимальной цене. Это была последняя версия, поддерживающая Windows 95 и NT 4.0 в качестве целевой. [ необходима ссылка ] Номер версии: 13.10.3077
eMbedded Visual C ++ [25] в различных версиях использовался для разработки для некоторых версий операционной системы Windows CE . Первоначально он заменил среду разработки, состоящую из инструментов, добавленных в Visual C ++ 6.0. eMbedded Visual C ++ был заменен как отдельная среда разработки Microsoft Visual Studio 2005 .
32-битные и 64-битные версии
Visual C ++ 2005 (также известный как Visual C ++ 8.0), включающий MFC 8.0, был выпущен в ноябре 2005 года. Эта версия поддерживает .NET 2.0 и включает новую версию C ++, ориентированную на платформу .NET ( C ++ / CLI ) с целью замены предыдущей версии ( Managed C ++ ). Однако управляемый C ++ для CLI по-прежнему доступен через параметры компилятора. Он также представил OpenMP . В Visual C ++ 2005 Microsoft также представила Team Foundation Server . В Visual C ++ 8.0 возникают проблемы с компиляцией проектов MFC AppWizard, созданных с помощью Visual Studio 6.0, поэтому обслуживание устаревших проектов можно продолжить в исходной среде IDE, если перезапись невозможна. Visual C ++ 2005 - последняя версия, предназначенная для Windows 98 иWindows Me . [26] [27] Версия SP1 (14.00.50727.762) также доступна в Microsoft Windows SDK Update для Windows Vista .
Visual C ++ 2008 (также известный как Visual C ++ 9.0) был выпущен в ноябре 2007 года. Эта версия поддерживает .NET 3.5. Управляемый C ++ для CLI по-прежнему доступен через параметры компилятора. По умолчанию все приложения, скомпилированные для среды выполнения Visual C ++ 2008 (статическая и динамическая компоновка), будут работать только в Windows 2000 и более поздних версиях. [28] [29] Пакет функций, выпущенный для VC9, позже включенный в SP1, добавил поддержку расширений библиотеки C ++ TR1 . Версия SP1 (15.00.30729.01) также доступна в Microsoft Windows SDK для Windows 7 .
Некоторые версии Visual C ++ поддерживали Itanium 2 .
Visual C ++ 2010 (также известный как Visual C ++ 10.0) был выпущен 12 апреля 2010 года. Он использует базу данных SQL Server Compact для хранения информации об исходном коде, включая информацию IntelliSense , для лучшей поддержки IntelliSense и автозавершения кода. [30] Однако Visual C ++ 2010 не поддерживает Intellisense для C ++ / CLI. [31] Эта версия добавляет C ++ параллельных вычислений библиотек называются Параллельные Patterns Library , частичная поддержка C ++ 11 , значительно улучшенный IntelliSense на основе Эдисон Design Group переднего конце, [32] и улучшение производительности в оба компилятор и генерируемый код . [33]Эта версия построена на .NET 4.0, но поддерживает компиляцию в машинный код . Частичная поддержка C ++ 11 в основном состоит из шести функций компилятора: [34] лямбда-выражения, ссылки rvalue, auto, decltype, static_assert и nullptr. C ++ 11 также поддерживает функции библиотеки (например, перемещение компонентов TR1 из пространства имен std :: tr1 непосредственно в пространство имен std). Также рассматривались вариативные шаблоны , но они были отложены до какой-то будущей версии из-за более низкого приоритета, что объяснялось тем фактом, что, в отличие от других дорогостоящих в реализации функций (лямбда, ссылки rvalue), вариативные шаблоны принесут пользу только меньшинству библиотеки. писатели, а не большинство конечных пользователей компилятора. [35]По умолчанию все приложения, скомпилированные для среды выполнения Visual C ++ 2010, работают только в Windows XP SP2 и более поздних версиях. Версия RTM (16.00.30319) также доступна в Windows SDK для Windows 7 и .NET Framework 4 (WinSDK v7.1). [36] Версия SP1 (16.00.40219) доступна как часть Visual Studio 2010 с пакетом обновления 1 или через обновление компилятора Microsoft Visual C ++ 2010 с пакетом обновления 1 (SP1) для Windows SDK 7.1. [37]
Visual C ++ 2012 (также известный как Visual C ++ 11.0) был выпущен 15 августа 2012 года. Он включает улучшенную поддержку C ++ 11 и поддержку разработки среды выполнения Windows . [38]
Visual C ++ 2013 (также известный как Visual C ++ 12.0) был выпущен 17 октября 2013 года. Он включает дополнительную поддержку C ++ 11 и C99 и представляет REST SDK. [39]
Visual C ++ 2015 (также известный как Visual C ++ 14.0) был выпущен 20 июля 2015 года. [40] В нем улучшена поддержка C ++ 11/14/17. [41] Без какого-либо объявления со стороны Microsoft, Visual Studio 2015 с обновлением 2 начал генерировать вызовы телеметрии в скомпилированных двоичных файлах. После того, как некоторые пользователи связались с Microsoft по поводу этой проблемы, Microsoft заявила, что удалит эти вызовы телеметрии при компиляции с будущим обновлением 3 для Visual Studio 2015. [42] [43] Данная функция была удалена из статических библиотек Visual C ++ CRT в Visual Studio. Обновление 2015 г. 3. [ необходима ссылка ]
Visual C ++ 2017 (также известный как Visual C ++ 14.1) был выпущен 7 марта 2017 г.
Visual C ++ 2019 (также известный как Visual C ++ 14.2) был выпущен 2 апреля 2019 г.
Внутренняя нумерация версий
Начиная с Microsoft C 6.0, предопределенный макрос _MSC_VERуказывает основной и дополнительный номера версий компилятора Visual C ++. Значение макроса - это целочисленный литерал, в котором последние две цифры указывают дополнительный номер версии, а предыдущие цифры указывают номер основной версии.
Из Visual Studio 2017, _MSC_VERбудет увеличиваться монотонно при каждом обновлении Visual C ++ набор инструментов . Так, например, версия MSVC ++ 14.11, поставляемая с Visual Studio 2017 версии 15.3.0, имеет _MSC_VERзначение 1911. Microsoft рекомендует использовать >=оператор для проверки значения _MSC_VER.
Вот значения _MSC_VERдля различных версий компилятора Visual C ++:
MSC 6.0 _MSC_VER == 600 MSC 7.0 _MSC_VER == 700 MSVC ++ 1.0 _MSC_VER == 800 MSVC ++ 2.0 _MSC_VER == 900 MSVC ++ 4.0 _MSC_VER == 1000 ( Developer Studio 4.0 ) MSVC ++ 4.2 _MSC_VER == 1020 ( Developer Studio 4.2 ) MSVC ++ 5.0 _MSC_VER == 1100 (Визуальная студия 97 версия 5.0 ) MSVC ++ 6.0 _MSC_VER == 1200 ( Визуальная Студия 6.0 версия 6.0 ) MSVC ++ 7.0 _MSC_VER == 1300 ( Визуальные студии . NET 2002 версия 7.0 ) MSVC ++ 7.1 _MSC_VER == 1310 ( Визуальные студии . NET 2003, версия 7.1 ) MSVC ++8.0 _MSC_VER == 1400 ( Visual Studio 2005 версии 8.0 ) MSVC ++ 9.0 _MSC_VER == 1500 ( Visual Studio 2008 версии 9.0 ) MSVC ++ 10.0 _MSC_VER == 1600 ( Visual Studio 2010 версии 10.0 ) MSVC ++ 11.0 _MSC_VER == 1700 ( Visual Studio 2012 версии 11.0 )MSVC ++ 12.0 _MSC_VER == 1800 ( Visual Studio 2013, версия 12.0 ) MSVC ++ 14.0 _MSC_VER == 1900 ( Visual Studio 2015, версия 14.0 ) MSVC ++ 14.1 _MSC_VER == 1910 ( Visual Studio 2017, версия 15.0 ) MSVC ++ 14.11 _MSC_VER == 1911 ( версия Visual Studio 201715.3 ) MSVC ++ 14.12 _MSC_VER == 1912 ( Visual Studio 2017 версии 15.5 ) MSVC ++ 14.13 _MSC_VER == 1913 ( Visual Studio 2017 версии 15.6 ) MSVC ++ 14.14 _MSC_VER == 1914 ( Visual Studio 2017 версии 15.7 ) MSVC ++ 14.15 _MSC_VER == 1915 ( Visual Studio2017 версии 15.8 ) MSVC ++ 14.16 _MSC_VER == 1916 ( Visual Studio 2017 версии 15.9 ) MSVC ++ 14.2 _MSC_VER == 1920 ( Visual Studio 2019 версии 16.0 ) MSVC ++ 14.21 _MSC_VER == 1921 ( Visual Studio 2019 версии 16.1 ) MSVC ++ 14.22 _MSC_VER == 1922 (Визуальная Студия 2019 версия 16,2 ) MSVC ++ 14,23 _MSC_VER == 1923 ( Визуальная Студия 2019 версия 16,3 ) MSVC ++ 14,24 _MSC_VER == 1924 ( Визуальная Студия 2019 версия 16,4 ) MSVC ++ 14,25 _MSC_VER == 1925 ( Визуальная Студия 2019 Версия 16.5 ) MSVC ++ 14,26 _MSC_VER== 1926 ( Visual Studio 2019 версии 16.6 )
Эти номера версий относятся к основному номеру версии компиляторов и библиотек Visual C ++, как видно из каталогов установки. Это не относится к году в названии выпуска Visual Studio. Доступен подробный список. [44]
Совместимость
ABI
Компилятор Visual C ++ ABI исторически менялся между основными выпусками компилятора. [45] Это особенно верно для контейнеров STL, где размеры контейнеров сильно различались между выпусками компилятора. [46] Поэтому Microsoft не рекомендует использовать интерфейсы C ++ на границах модулей, если нужно включить клиентский код, скомпилированный с использованием другой версии компилятора. Вместо C ++ Microsoft рекомендует использовать интерфейсы C [47] или COM [48] , которые предназначены для обеспечения стабильного ABI между выпусками компилятора.
Все выпуски MSVC 14.x имеют стабильный ABI, [49] и двоичные файлы, созданные с этими версиями, могут быть смешаны для обеспечения прямой совместимости с учетом следующих ограничений:
Используемая версия набора инструментов должна быть равна или выше самой высокой версии набора инструментов, используемой для построения любых связанных двоичных файлов.
Версия MSVC Redistributable должна быть равна или выше версии набора инструментов, используемой любым компонентом приложения.
Статические библиотеки или объектные файлы, скомпилированные с помощью / GL (оптимизация всей программы), не совместимы на двоичном уровне между версиями и должны использовать один и тот же набор инструментов.
Библиотеки времени выполнения C
Visual C ++ поставляется с различными версиями библиотек времени выполнения C. [50] Это означает, что пользователи могут компилировать свой код с любой из доступных библиотек. Однако это может вызвать некоторые проблемы при использовании разных компонентов ( DLL , EXE ) в одной программе. Типичный пример - программа, использующая разные библиотеки . Пользователь должен использовать одну и ту же среду выполнения C для всех компонентов программы, если не поняты последствия. Microsoft рекомендует использовать многопоточную библиотеку динамической компоновки (параметр компилятора / MD или / MDd), чтобы избежать возможных проблем. [50]
C
Хотя продукт возник как IDE для языка программирования C , в течение многих лет поддержка этого языка компилятором соответствовала только исходной редакции стандарта C , датируемой 1989 годом, но не версии стандарта C99 . Планов по поддержке C99 не было даже в 2011 году, более чем через десять лет после его публикации. [51]
В Visual C ++ 2013 наконец-то была добавлена поддержка различных функций C99 в режиме C (включая назначенные инициализаторы, составные литералы и _Boolтип) [52], хотя это еще не было завершено. [53] Visual C ++ 2015 дополнительно улучшил поддержку C99 с полной поддержкой стандартной библиотеки C99, за исключением функций, для которых требуются функции языка C99, еще не поддерживаемые компилятором. [54]
Большинство изменений из версии стандарта C11 все еще не поддерживаются Visual C ++ 2017. [55] Например, общий выбор с помощью _Genericключевого слова не поддерживается компилятором и приводит к синтаксической ошибке. [56]
«Полная совместимость с C11 входит в нашу дорожную карту, и обновление препроцессора - это только первый шаг в этом процессе. Функция C11 _Generic на самом деле не является частью препроцессора, поэтому она еще не реализована. Когда она будет реализована, я ожидаю, что эта функция будет работать независимо от того, используется ли традиционная или обновленная логика препроцессора ». [57]
использованная литература
^ a b «Visual C ++ добавляет поддержку Windows» . InfoWorld . 22 февраля 1993 г. с. 17.
^ Lextrait, Винсент (январь 2010). "Маяк языков программирования, v10.0" . Архивировано из оригинального 30 мая 2012 года . Проверено 14 марта 2010 года .
^ «Нужны ли мне эти распространяемые файлы Microsoft Visual C ++?» . Спроси Лео !. Проверено 18 ноября 2012.
^ Лейбсон, Стив (1985-02-01). «Обзоры программного обеспечения: группа экспертов анализирует 21 компилятор Си» . Компьютерный язык . Проверено 5 июня 2020 .
↑ Лэдд, Скотт Роберт (1 августа 1990 г.). «Оптимизация с помощью Microsoft C 6.0» .
^ Получено с http://support.microsoft.com/kb/196831 .
^ a b «Visual C ++ - мощный инструмент разработки» . InfoWorld . 21 июня 1993 г. с. 94.
^ "Конкурентный дебют DOS Extenders на выставке" . InfoWorld . 1 марта 1993 г. с. 18.
^ "Visual C ++ 1.5 интегрирует OLE, ODBC" . InfoWorld . 8 ноября 1993 г. с. 5.
^ "Microsoft установила предварительный выпуск 32-разрядной версии Visual C ++" . InfoWorld . 19 июля 1993 г. с. 12.
^ «C ++ IDE развиваются» . InfoWorld . 4 апреля 1994 г. с. 79.
^ «Стратегия Microsoft Visual C ++» .
^ a b «Устаревшие продукты» . Архивировано из оригинала на 2005-08-14.
^ Тот, Виктор (1996). «1» . Выпущен Visual C ++ 4.0 . Индианаполис: Издательство SAMS . ISBN 9780672308741. Проверено 26 июля 2013 года .
^ «История Visual Studio (Часть 3)» .
^ «Основные изменения с Visual C ++ 4.0 до 4.2» . Архивировано из оригинала на 2010-02-28 . Проверено 18 апреля 2018 .
^ «Основные отличия от Visual C ++ 4.2 до 5.0» .
^ "Microsoft Visual C ++ 5.0 Learning Edition" . Архивировано из оригинального 27 -го апреля 1999 года.
^ «Microsoft Visual C ++ 5.0 Professional Edition» . Архивировано из оригинального 27 -го апреля 1999 года.
^ "Microsoft Visual C ++ 5.0 Enterprise Edition" . Архивировано из оригинала 17 апреля 1999 года.
^ "Microsoft Visual C ++ 5.0 RISC Edition" . Архивировано из оригинального 29 апреля 1999 года.
↑ Шилдс, Натан П. (8 июня 2018 г.). "Уголовная жалоба" . Министерство юстиции США . п. 128. Само по себе это не является диспозитивным звеном, поскольку Visual C ++ 6.0, выпущенный в 1998 году, все еще имеет сторонников в основном потому, что для его работы не требуется установка платформы Microsoft .NET, как это делают более поздние версии Visual C ++.
^ «Основные отличия от Visual C ++ 5.0 до 6.0» . Архивировано из оригинального 14 сентября 2008 года.
^ На этой странице подчеркивается, что Пользователи также должны работать под управлением Windows 98, Windows NT 4.0 или Windows 2000. Получено с http://msdn2.microsoft.com/en-us/vstudio/aa718349.aspx .
^ Дуглас Болинг: Программирование Microsoft Windows CE .NET, третье издание Microsoft Press; 3-е издание (25 июня 2003 г.) Мягкая обложка: 1264 страницы ISBN 978-0735618848 - Компаньон компакт-диск с Microsoft eMbedded Visual C ++ 4.0 Service Pack 2 Архивировано 11 февраля 2013 г. в archive.today
^ Как: изменить WINVER и _WIN32_WINNT
^ Критические изменения
^ Платформы Windows (CRT)
^ «Критические изменения Visual C ++ 2008» .
^ Блог группы разработчиков Visual C ++. «IntelliSense, часть 2: будущее» . Проверено 12 марта 2008 года .
^ «Почему IntelliSense не поддерживается для C ++ / CLI в Visual Studio 2010» . Проверено 13 марта 2011 года .
^ Блог группы разработчиков Visual C ++. «Восстановление Intellisense» .
^ Блог группы разработчиков Visual C ++. «Создание кода Visual C ++ в Visual Studio 2010» .
^ «Основные возможности языка C ++ 0x в VC10: Таблица» .
^ "Стефан Т. Лававей: Все, что вы когда-либо хотели знать о nullptr" .
^ Блог о Microsoft Windows SDK. " Год выхода: Windows SDK для Windows 7 и .NET Framework 4" .
^ FIX: Компиляторы Visual C ++ удаляются при обновлении Visual Studio 2010 Professional или Visual Studio 2010 Express до Visual Studio 2010 SP1, если установлен Windows SDK v7.1.
^ «Что нового для Visual C ++ в Visual Studio 2012» . Сеть разработчиков Microsoft . Microsoft . Проверено 20 сентября 2015 года .
^ «Что нового для Visual C ++ в Visual Studio 2013» . Сеть разработчиков Microsoft . Miicrosoft . Проверено 20 сентября 2015 года .
↑ Эрик Батталио (20 июля 2015 г.). «Visual Studio 2015 RTM уже доступна» . Блог группы разработчиков Visual C ++ . Microsoft.
^ Stephan Т. Lavavej (19 июня 2015). «Возможности C ++ 11/14/17 в VS 2015 RTM» . Блог группы разработчиков Visual C ++ . Microsoft.
^ Обзор автоматической вставки телеметрии Microsoft в двоичные файлы C ++
^ «Visual Studio добавляет вызовы функций телеметрии в двоичный файл? • / r / cpp» . Reddit . Проверено 17 августа 2016 .
^ "Предопределенные макросы компилятора / Wiki / Компиляторы" . sourceforge.net . Проверено 11 февраля 2016 .
^ Microsoft MSDN: критические изменения в Visual C ++
^ Microsoft MSDN: Контейнеры (современный C ++)
^ Microsoft MSDN: Переносимость на границах ABI (современный C ++)
^ Форум Microsoft: двоичная совместимость между версиями Visual C ++. Архивировано 16 февраля 2013 г. в archive.today.
^ docs.microsoft.com: двоичная совместимость C ++ между Visual Studio 2015, 2017 и 2019
^ a b C Библиотеки времени выполнения
^ «Поддержка C99» . Microsoft Connect . Архивировано из оригинала на 2016-03-04 . Проверено 21 сентября 2015 .
^ «Что нового для Visual C ++ в Visual Studio 2013» . Сеть разработчиков Microsoft . Microsoft.
↑ Пэт Бреннер (19 июля 2013 г.). «Поддержка библиотеки C99 в Visual Studio 2013» . Блог группы разработчиков Visual C ++ . Microsoft.
^ «Что нового для Visual C ++ в Visual Studio 2015» . Сеть разработчиков Microsoft . Microsoft.
^ «Пошаговое руководство: скомпилируйте программу на языке C в командной строке» . Документация по Visual C ++ . Microsoft.
^ «MSVC 2017 не поддерживает _Generic (тип универсальных макросов) в C» .
^ Luvsanbat, Бат-Ulzii (6 июля 2018). «Прогресс препроцессора MSVC в направлении соответствия» . Сеть разработчиков Microsoft . Архивировано из оригинала на 8 января 2019 года.
внешние ссылки
Официальный веб-сайт
Создание приложений Win32 с использованием Visual C ++ 2005 Express
Инструменты и шаблоны Visual C ++ в Visual Studio Editions
Автономные инструменты сборки Visual C ++
Шоу Microsoft на девятом канале Going Native
Обновление компилятора Microsoft C / C ++ , сентябрь 2015 г.
Категории :
Компиляторы C (язык программирования)
Компиляторы C ++
Интегрированные среды разработки
Инструменты разработки Microsoft
Microsoft Visual Studio
Программное обеспечение 1993 г.
Скрытые категории:
Ссылки на архив шаблонов веб-архива
Все статьи с утверждениями без источника
Статьи с заявлениями без источника за май 2010 г.
Статьи с неподтвержденными материалами за август 2016 г.