Microsoft Visual C


Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

Microsoft Visual C ++ (часто сокращенно MSVC ) - это продукт интегрированной среды разработки (IDE) от Microsoft для языков программирования C , C ++ и C ++ / CLI . MSVC - проприетарное программное обеспечение ; Изначально это был отдельный продукт, но позже он стал частью Visual Studio и стал доступен как в пробной, так и в бесплатной форме. В нем есть инструменты для разработки и отладки кода C ++, особенно кода, написанного для Windows API , DirectX и.NET .

Многим приложениям для правильной работы требуются распространяемые пакеты библиотеки времени выполнения 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  2017  15.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  Studio 2017  версии  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]

использованная литература

  1. ^ a b «Visual C ++ добавляет поддержку Windows» . InfoWorld . 22 февраля 1993 г. с. 17.
  2. ^ Lextrait, Винсент (январь 2010). "Маяк языков программирования, v10.0" . Архивировано из оригинального 30 мая 2012 года . Проверено 14 марта 2010 года .
  3. ^ «Нужны ли мне эти распространяемые файлы Microsoft Visual C ++?» . Спроси Лео !. Проверено 18 ноября 2012.
  4. ^ Лейбсон, Стив (1985-02-01). «Обзоры программного обеспечения: группа экспертов анализирует 21 компилятор Си» . Компьютерный язык . Проверено 5 июня 2020 .
  5. Лэдд, Скотт Роберт (1 августа 1990 г.). «Оптимизация с помощью Microsoft C 6.0» .
  6. ^ Получено с http://support.microsoft.com/kb/196831 .
  7. ^ a b «Visual C ++ - мощный инструмент разработки» . InfoWorld . 21 июня 1993 г. с. 94.
  8. ^ "Конкурентный дебют DOS Extenders на выставке" . InfoWorld . 1 марта 1993 г. с. 18.
  9. ^ "Visual C ++ 1.5 интегрирует OLE, ODBC" . InfoWorld . 8 ноября 1993 г. с. 5.
  10. ^ "Microsoft установила предварительный выпуск 32-разрядной версии Visual C ++" . InfoWorld . 19 июля 1993 г. с. 12.
  11. ^ «C ++ IDE развиваются» . InfoWorld . 4 апреля 1994 г. с. 79.
  12. ^ «Стратегия Microsoft Visual C ++» .
  13. ^ a b «Устаревшие продукты» . Архивировано из оригинала на 2005-08-14.
  14. ^ Тот, Виктор (1996). «1» . Выпущен Visual C ++ 4.0 . Индианаполис: Издательство SAMS . ISBN 9780672308741. Проверено 26 июля 2013 года .
  15. ^ «История Visual Studio (Часть 3)» .
  16. ^ «Основные изменения с Visual C ++ 4.0 до 4.2» . Архивировано из оригинала на 2010-02-28 . Проверено 18 апреля 2018 .
  17. ^ «Основные отличия от Visual C ++ 4.2 до 5.0» .
  18. ^ "Microsoft Visual C ++ 5.0 Learning Edition" . Архивировано из оригинального 27 -го апреля 1999 года.
  19. ^ «Microsoft Visual C ++ 5.0 Professional Edition» . Архивировано из оригинального 27 -го апреля 1999 года.
  20. ^ "Microsoft Visual C ++ 5.0 Enterprise Edition" . Архивировано из оригинала 17 апреля 1999 года.
  21. ^ "Microsoft Visual C ++ 5.0 RISC Edition" . Архивировано из оригинального 29 апреля 1999 года.
  22. Шилдс, Натан П. (8 июня 2018 г.). "Уголовная жалоба" . Министерство юстиции США . п. 128. Само по себе это не является диспозитивным звеном, поскольку Visual C ++ 6.0, выпущенный в 1998 году, все еще имеет сторонников в основном потому, что для его работы не требуется установка платформы Microsoft .NET, как это делают более поздние версии Visual C ++.
  23. ^ «Основные отличия от Visual C ++ 5.0 до 6.0» . Архивировано из оригинального 14 сентября 2008 года.
  24. ^ На этой странице подчеркивается, что Пользователи также должны работать под управлением Windows 98, Windows NT 4.0 или Windows 2000. Получено с http://msdn2.microsoft.com/en-us/vstudio/aa718349.aspx .
  25. ^ Дуглас Болинг: Программирование 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 
  26. ^ Как: изменить WINVER и _WIN32_WINNT
  27. ^ Критические изменения
  28. ^ Платформы Windows (CRT)
  29. ^ «Критические изменения Visual C ++ 2008» .
  30. ^ Блог группы разработчиков Visual C ++. «IntelliSense, часть 2: будущее» . Проверено 12 марта 2008 года .
  31. ^ «Почему IntelliSense не поддерживается для C ++ / CLI в Visual Studio 2010» . Проверено 13 марта 2011 года .
  32. ^ Блог группы разработчиков Visual C ++. «Восстановление Intellisense» .
  33. ^ Блог группы разработчиков Visual C ++. «Создание кода Visual C ++ в Visual Studio 2010» .
  34. ^ «Основные возможности языка C ++ 0x в VC10: Таблица» .
  35. ^ "Стефан Т. Лававей: Все, что вы когда-либо хотели знать о nullptr" .
  36. ^ Блог о Microsoft Windows SDK. " Год выхода: Windows SDK для Windows 7 и .NET Framework 4" .
  37. ^ FIX: Компиляторы Visual C ++ удаляются при обновлении Visual Studio 2010 Professional или Visual Studio 2010 Express до Visual Studio 2010 SP1, если установлен Windows SDK v7.1.
  38. ^ «Что нового для Visual C ++ в Visual Studio 2012» . Сеть разработчиков Microsoft . Microsoft . Проверено 20 сентября 2015 года .
  39. ^ «Что нового для Visual C ++ в Visual Studio 2013» . Сеть разработчиков Microsoft . Miicrosoft . Проверено 20 сентября 2015 года .
  40. Эрик Батталио (20 июля 2015 г.). «Visual Studio 2015 RTM уже доступна» . Блог группы разработчиков Visual C ++ . Microsoft.
  41. ^ Stephan Т. Lavavej (19 июня 2015). «Возможности C ++ 11/14/17 в VS 2015 RTM» . Блог группы разработчиков Visual C ++ . Microsoft.
  42. ^ Обзор автоматической вставки телеметрии Microsoft в двоичные файлы C ++
  43. ^ «Visual Studio добавляет вызовы функций телеметрии в двоичный файл? • / r / cpp» . Reddit . Проверено 17 августа 2016 .
  44. ^ "Предопределенные макросы компилятора / Wiki / Компиляторы" . sourceforge.net . Проверено 11 февраля 2016 .
  45. ^ Microsoft MSDN: критические изменения в Visual C ++
  46. ^ Microsoft MSDN: Контейнеры (современный C ++)
  47. ^ Microsoft MSDN: Переносимость на границах ABI (современный C ++)
  48. ^ Форум Microsoft: двоичная совместимость между версиями Visual C ++. Архивировано 16 февраля 2013 г. в archive.today.
  49. ^ docs.microsoft.com: двоичная совместимость C ++ между Visual Studio 2015, 2017 и 2019
  50. ^ a b C Библиотеки времени выполнения
  51. ^ «Поддержка C99» . Microsoft Connect . Архивировано из оригинала на 2016-03-04 . Проверено 21 сентября 2015 .
  52. ^ «Что нового для Visual C ++ в Visual Studio 2013» . Сеть разработчиков Microsoft . Microsoft.
  53. Пэт Бреннер (19 июля 2013 г.). «Поддержка библиотеки C99 в Visual Studio 2013» . Блог группы разработчиков Visual C ++ . Microsoft.
  54. ^ «Что нового для Visual C ++ в Visual Studio 2015» . Сеть разработчиков Microsoft . Microsoft.
  55. ^ «Пошаговое руководство: скомпилируйте программу на языке C в командной строке» . Документация по Visual C ++ . Microsoft.
  56. ^ «MSVC 2017 не поддерживает _Generic (тип универсальных макросов) в C» .
  57. ^ 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 г.
Источник « https://en.wikipedia.org/w/index.php?title=Microsoft_Visual_C&oldid=1015421055 »