마이크로소프트 비주얼 C++

Visual C++
개발자마이크로소프트
발표일1993년 2월(33년 전)(1993-02)
안정화 버전
14.44 (Build 35211.0) / 2025년 6월 17일(16개월 전)(2025-06-17)
프로그래밍 언어C++
운영 체제윈도우
플랫폼IA-32, x86-64, ARM
언어영어, 중국어(간체 및 번체), 체코어, 프랑스어, 독일어, 이탈리아어, 일본어, 한국어, 폴란드어, 포르투갈어(브라질), 러시아어, 스페인어, 터키어
종류컴파일러
라이선스셰어웨어, 프리웨어
웹사이트visualstudio.microsoft.com/vs/features/cplusplus/

마이크로소프트 비주얼 C++(Microsoft Visual C++, MSVC)는 마이크로소프트의 C, C++, C++/CLI 및 C++/CX 프로그래밍 언어용 컴파일러이다. MSVC는 사유 소프트웨어이며, 원래 독립형 제품이었으나 나중에 비주얼 스튜디오의 일부가 되었고 셰어웨어 및 프리웨어 형태로 제공된다. 특히 윈도우 API, DirectX 및 .NET용으로 작성된 C++ 코드를 개발하고 디버그하는 도구를 제공한다.

많은 응용 소프트웨어는 올바르게 작동하기 위해 재배포 가능한 비주얼 C++ 런타임 라이브러리 패키지를 필요로 한다. 이러한 패키지는 지원하는 응용 프로그램과 별도로 자주 설치되어 여러 응용 프로그램이 단 한 번의 설치로 패키지를 사용할 수 있도록 한다. 이러한 비주얼 C++ 재배포 가능 및 런타임 패키지는 대부분의 응용 프로그램이 사용하는 표준 라이브러리용으로 설치된다.

역사

비주얼 C++의 전신은 마이크로소프트 C/C++라고 불렸다. 마이크로소프트 QuickC 2.5와 윈도우 1.0용 마이크로소프트 QuickC도 있었다. 비주얼 C++ 컴파일러는 여전히 마이크로소프트 C/C++로 알려져 있으며, 비주얼 C++ 2015 업데이트 2 출시 시점에서 버전 14.0.23918.0이다.

16비트 버전

32비트 전용 버전

32비트 및 64비트 버전

내부 버전 번호 매기기

비주얼 C 또는 C++를 사용할 때 고려해야 할 몇 가지 다른 버전 번호가 있다. 이 중 가장 오래되고 원본인 것은 컴파일러 버전 번호이며, 이는 초기 마이크로소프트 C 컴파일러 시절부터 단조롭게 증가해 왔다. 이는 어떤 옵션 없이 cl.exe 명령을 실행할 때 반환되는 버전이다. 소수점 이하 두 자리를 취하고 소수점을 제거하면 C 전처리기 매크로: _MSC_VER의 값과 CMake 변수: MSVC_VERSION의 값이 된다. C 매크로의 더 긴 버전은 _MSC_FULL_VER이며 컴파일러 빌드 간의 더 미세한 구분을 만든다. _MSC_VER의 예는 Microsoft C/C++ 컴파일러의 버전 19.33을 나타내는 1933이며, _MSC_FULL_VER의 예는 193331630이다.

"17.3.4"와 같은 Visual 제품 버전은 컴파일러 버전 19.33이 포함된 Visual Studio 버전을 지정한다. 그런 다음 마이크로소프트 비주얼 C/C++ 런타임 라이브러리 버전, 예를 들어 "14.3"이 있다. 이로부터 런타임 라이브러리 버전의 처음 세 자리를 취하고 소수점을 제거하여 얻을 수 있는 툴셋 버전, 예를 들어 "143"도 추론할 수 있다. 여기에는 비주얼 C/C++ 런타임 라이브러리뿐만 아니라 컴파일러, 링커, 어셈블러, 기타 빌드 도구, 그리고 일치하는 라이브러리 및 헤더 파일이 포함된다. 다음은 알려진 상관 관계가 있는 버전 번호의 (스크래핑 가능한) 표이다.

Visual Studio Versions
product nameVC ( Version Code )marketing year_MSC_VER_MSC_FULL_VERruntime library version
Microsoft C 6.0600
Microsoft C/C++ 7.0700
Visual C++ 1.01.08001
Visual C++ 2.02.09002
Visual C++ 4.04.010004
Visual C++ 4.14.110104.1
Visual C++ 4.24.210204.2
Visual Studio 97 [5.0]5.09711005
Visual Studio 6.0 SP56.01200120088046
Visual Studio 6.0 SP66.01200120088046
Visual Studio .NET 2002 [7.0]7.020021300130094667
Visual Studio .NET 2003 Beta [7.1]7.120031310131022927.1
Visual Studio Toolkit 2003 [7.1]7.120031310131030527.1
Visual Studio .NET 2003 [7.1]7.120031310131030777.1
Visual Studio .NET 2003 SP1 [7.1]7.120031310131060307.1
Visual Studio 2005 Beta 1 [8.0]8.0200514001400406078
Visual Studio 2005 Beta 2 [8.0]8.0200514001400502158
Visual Studio 2005 [8.0]8.0200514001400503208
Visual Studio 2005 SP1 [8.0]8.0200514001400507278
Visual Studio 2008 Beta 2 [9.0]8.0200815001500207069
Visual Studio 2008 [9.0]9.0201015001500210229
Visual Studio 2008 SP1 [9.0]9.0201015001500307299
Visual Studio 2010 Beta 1 [10.0]10.02010160016002050610
Visual Studio 2010 Beta 2 [10.0]10.02010160016002100310
Visual Studio 2010 [10.0]10.02010160016003031910
Visual Studio 2010 SP1 [10.0]10.02010160016004021910
Visual Studio 2012 [11.0]11.02012170017005072711
Visual Studio 2012 Update 1 [11.0]11.02012170017005110611
Visual Studio 2012 Update 2 [11.0]11.02012170017006031511
Visual Studio 2012 Update 3 [11.0]11.02012170017006061011
Visual Studio 2012 Update 4 [11.0]11.02012170017006103011
Visual Studio 2012 November CTP [11.0]11.02012170017005102511
Visual Studio 2013 Preview [12.0]12.02013180018002061712
Visual Studio 2013 RC [12.0]12.02013180018002082712
Visual Studio 2013 [12.0]12.02013180018002100512
Visual Studio 2013 Update 1 [12.0]12.02013180018002100512
Visual Studio 2013 Update2 RC [12.0]12.02013180018003032412
Visual Studio 2013 Update 2 [12.0]12.02013180018003050112
Visual Studio 2013 Update 3 [12.0]12.02013180018003072312
Visual Studio 2013 Update 4 [12.0]12.02013180018003110112
Visual Studio 2013 Update 5 [12.0]12.02013180018004062912
Visual Studio 2013 November CTP [12.0]12.02013180018002111412
Visual Studio 2015 [14.0]14.02015190019002302614
Visual Studio 2015 Update 1 [14.0]14.02015190019002350614
Visual Studio 2015 Update 2 [14.0]14.02015190019002391814
Visual Studio 2015 Update 3 [14.0]14.02015190019002421014
Visual Studio 2017 version 15.015.02017191019102501714.1
Visual Studio 2017 version 15.115.12017191019102501714.1
Visual Studio 2017 version 15.215.22017191019102501714.1
Visual Studio 2017 version 15.3.315.3.32017191119112550714.11
Visual Studio 2017 version 15.4.415.4.42017191119112554214.11
Visual Studio 2017 version 15.4.515.4.52017191119112554714.11
Visual Studio 2017 version 15.5.215.5.22017191219122583114.12
Visual Studio 2017 version 15.5.315.5.32017191219122583414.12
Visual Studio 2017 version 15.5.415.5.42017191219122583414.12
Visual Studio 2017 version 15.5.615.5.62017191219122583514.12
Visual Studio 2017 version 15.5.715.5.72017191219122583514.12
Visual Studio 2017 version 15.6.015.6.02017191319132612814.13
Visual Studio 2017 version 15.6.115.6.12017191319132612814.13
Visual Studio 2017 version 15.6.215.6.22017191319132612814.13
Visual Studio 2017 version 15.6.315.6.32017191319132612914.13
Visual Studio 2017 version 15.6.415.6.42017191319132612914.13
Visual Studio 2017 version 15.6.615.6.62017191319132613114.13
Visual Studio 2017 version 15.6.715.6.72017191319132613214.13
Visual Studio 2017 version 15.7.115.7.12017191419142642814.14
Visual Studio 2017 version 15.7.215.7.22017191419142642914.14
Visual Studio 2017 version 15.7.315.7.32017191419142643014.14
Visual Studio 2017 version 15.7.515.7.52017191419142643314.14
Visual Studio 2017 version 15.9.115.9.12017191619162702314.16
Visual Studio 2017 version 15.9.415.9.42017191619162702514.16
Visual Studio 2017 version 15.9.515.9.52017191619162702614.16
Visual Studio 2017 version 15.9.715.9.72017191619162702714.16
Visual Studio 2017 version 15.9.1115.9.112017191619162703014.16
Visual Studio 2019 version 16.0.016.0.02019192019202750814.20
Visual Studio 2019 version 16.1.216.1.22019192119212770214.21
Visual Studio 2019 version 16.2.316.2.32019192219222790514.21
Visual Studio 2019 version 16.3.216.3.22019192319232810514.21
Visual Studio 2019 version 16.4.016.4.02019192419242831414.24
Visual Studio 2019 version 16.5.116.5.12019192519252861114.25
Visual Studio 2019 version 16.6.216.6.22019192619262880614.26
Visual Studio 2019 version 16.716.72019192719272911214.27
Visual Studio 2019 version 16.8.116.8.12019192819282933314.28
Visual Studio 2019 version 16.8.216.8.22019192819282933414.28
Visual Studio 2019 version 16.9.016.9.02019192819282991014.28
Visual Studio 2019 version 16.9.216.9.22019192819282991314.28
Visual Studio 2019 version 16.9.1716.9.172019192819282992114.28
Visual Studio 2019 version 16.9.1816.9.182019192819282992114.28
Visual Studio 2019 version 16.9.1916.9.192019192819282992314.28
Visual Studio 2019 version 16.11.216.11.22019192919293013314.29
Visual Studio 2019 version 16.11.816.11.82019192919293013814.29
Visual Studio 2019 version 16.11.916.11.92019192919293013914.29
Visual Studio 2019 version 16.11.1016.11.102019192919293014014.29
Visual Studio 2019 version 16.11.1116.11.112019192919293014114.29
Visual Studio 2019 version 16.11.1216.11.122019192919293014214.29
Visual Studio 2019 version 16.11.1616.11.162019192919293014514.29
Visual Studio 2019 version 16.11.1716.11.172019192919293014614.29
Visual Studio 2019 version 16.11.2116.11.212019192919293014714.29
Visual Studio 2019 version 16.11.2416.11.242019192919293014814.29
Visual Studio 2019 version 16.11.2716.11.272019192919293015114.29
Visual Studio 2019 version 16.11.3516.11.352019192919293015414.29
Visual Studio 2022 version 17.0.117.0.12022193019303070514.30
Visual Studio 2022 version 17.0.217.0.22022193019303070614.31
Visual Studio 2022 version 17.1.317.1.32022193119313110514.31
Visual Studio 2022 version 17.2.217.2.22022193219323132914.32
Visual Studio 2022 version 17.3.417.3.42022193319333163014.33
Visual Studio 2022 version 17.4.017.4.02022193419343193314.34
Visual Studio 2022 version 17.5.017.5.02022193519353221514.35
Visual Studio 2022 version 17.6.017.6.02022193619363253214.36
Visual Studio 2022 version 17.6.217.6.22022193619363253214.36.32532
Visual Studio 2022 version 17.6.417.6.42022193619363253514.36.32532
Visual Studio 2022 version 17.7.017.7.02022193719373282214.36.32543
Visual Studio 2022 version 17.8.017.8.02022193819383313014.38.33135
Visual Studio 2022 version 17.9.117.9.12022193919393352014.39.33520
Visual Studio 2022 version 17.9.617.9.62022193919393352314.39.33523
Visual Studio 2022 version 17.10.117.10.12022194019403381114.40.33811
Visual Studio 2022 version 17.10.1017.10.102022194019403381814.40.33818
Visual Studio 2022 version 17.11.017.11.02022194119413412014.41.34120
Visual Studio 2022 version 17.12.417.12.42022194219423443614.42.34436
Visual Studio 2022 version 17.13.017.13.02022194319433480814.43.34808
Visual Studio 2022 version 17.13.617.13.62022194319433481014.43.34810

호환성

ABI

비주얼 C++ 컴파일러 ABI는 역사적으로 주요 컴파일러 릴리스마다 변경되었다. 이는 특히 STL 컨테이너의 경우에 해당하며, 컨테이너 크기가 컴파일러 릴리스마다 많이 달라졌다. 따라서 마이크로소프트는 다른 컴파일러 버전으로 컴파일된 클라이언트 코드를 가능하게 하고자 할 때 모듈 경계에서 C++ 인터페이스를 사용하지 않는 것을 권장한다. C++ 대신 마이크로소프트는 컴파일러 릴리스 간에 안정적인 ABI를 갖도록 설계된 C 또는 COM 인터페이스를 사용할 것을 권장한다.

모든 14.x MSVC 릴리스는 안정적인 ABI를 가지며, 다음 제한 사항을 고려하면 이 버전으로 빌드된 바이너리를 전방 호환 방식으로 혼합할 수 있다.

C 런타임 라이브러리

비주얼 C++는 다양한 버전의 C 런타임 라이브러리를 함께 제공한다. 이는 사용자가 사용 가능한 라이브러리 중 어느 것으로든 코드를 컴파일할 수 있다는 것을 의미한다. 그러나 이는 동일한 프로그램에서 다른 구성 요소(DLL, EXE)를 사용할 때 일부 문제를 일으킬 수 있다. 일반적인 예는 다른 라이브러리를 사용하는 프로그램이다. 사용자는 그 의미를 이해하지 못하는 한 프로그램의 모든 구성 요소에 대해 동일한 C 런타임을 사용해야 한다. 마이크로소프트는 가능한 문제를 피하기 위해 멀티스레드, 동적 링크 라이브러리(/MD 또는 /MDd 컴파일러 옵션)를 사용할 것을 권장한다.

POSIX

마이크로소프트의 CRT는 POSIX 인터페이스의 큰 부분 집합을 구현하지만, 비주얼 C++ 컴파일러는 기본적으로 이러한 함수를 사용할 때마다 경고를 발생시킨다. 그 이유는 C 및 C++ 표준은 구현 정의 인터페이스 앞에 밑줄 접두사를 요구하므로 이러한 함수의 사용은 비표준이기 때문이다. 그러나 실제로 POSIX 호환 시스템은 이러한 밑줄이 있는 이름을 받아들이지 않으며, 대신 경고를 끄는 것이 더 이식성이 좋다.

C

이 제품은 원래 C 프로그래밍 언어를 위한 IDE로 시작했지만, 오랫동안 컴파일러의 해당 언어 지원은 1989년의 원래 C 표준에만 부합했으며, 표준의 C99 개정판은 지원하지 않았다. 2011년에도 C99 출판 후 10년이 넘었지만 C99를 지원할 계획은 없었다.

비주얼 C++ 2013은 마침내 C 모드에서 다양한 C99 기능(지정된 초기화, 복합 리터럴, _Bool 유형 포함)에 대한 지원을 추가했지만, 여전히 완전하지는 않았다. 비주얼 C++ 2015는 C99 지원을 더욱 향상시켜, 컴파일러가 아직 지원하지 않는 C99 언어 기능을 요구하는 기능을 제외하고 C99 표준 라이브러리를 완전히 지원했다.

C11 표준 개정판의 대부분의 변경 사항은 비주얼 C++ 2017에서 여전히 지원되지 않았다. 예를 들어, _Generic 키워드를 통한 일반 선택은 컴파일러에서 지원되지 않으며 구문 오류를 발생시킨다.

전처리기(preprocessor)는 2018년에 C11을 염두에 두고 재정비되었다.

C11 완전 호환성은 우리의 로드맵에 있으며, 전처리기를 업데이트하는 것은 그 과정의 첫 번째 단계일 뿐입니다. C11 _Generic 기능은 실제로 전처리기 부분이 아니므로 아직 구현되지 않았습니다. 구현되면 이 기능이 기존 또는 업데이트된 전처리기 로직 사용 여부와 관계없이 작동할 것으로 예상합니다.

_Generic 지원은 2020년 2월 현재 MSVC에 커밋되었다.

2020년 9월, 마이크로소프트는 MSVC에서 C11 및 C17 표준 지원이 버전 16.8에서 제공될 것이라고 발표했다. 여기에는 선택적 기능이 포함되지 않았지만, 마이크로소프트는 나중에 아토믹 및 스레드 지원을 추가할 계획이라고 밝혔다. 버전 17.5에서는 아토믹에 대한 부분적(아토믹 락이 누락되었으므로)이고 실험적인(즉, 컴파일러 플래그 /experimental:c11atomics 뒤에 숨겨진) 지원이 추가되었으며 버전 17.8에서는 스레드 지원이 추가되었는데, 이번에는 컴파일러 플래그 뒤에 숨겨지지 않았다.

C++

기본 설정으로 MSVC는 2단계 이름 조회를 수행하지 않아 광범위한 잘못된 코드를 플래그 지정하지 못한다. 대부분의 검사는 템플릿 인스턴스화로 연기된다. 최근 버전에서는 이 동작을 개선했지만, 명령줄 옵션 /permissive-를 통해 활성화해야 한다.

평가

1989년 2월 BYTE지는 마이크로소프트 C 5.1의 OS/2 지원, 대화형 개발을 위한 QuickC, 그리고 CodeView 디버거를 "탁월하다"고 평가했다. 왓콤 C/C++가 약간 더 빠른 코드를 생성했지만, 잡지는 개발자들이 "마이크로소프트의 더 친근하고 강력한 도구를 여전히 선호할 수 있다"고 말했다.

각주

  1. 1 2 “Visual C++ adds Windows support”. 《InfoWorld》. 1993년 2월 22일. 17면.
  2. ↑ “Microsoft Visual C++ Redistributable latest supported downloads”. 《Microsoft Learn》. 2025년 6월 17일에 확인함.
  3. ↑ Lextrait, Vincent (January 2010). “The Programming Languages Beacon, v10.0”. 2010년 3월 14일에 확인함.
  4. ↑ "Do I need these Microsoft Visual C++ redistributables?" 보관됨 2012-10-15 - 웨이백 머신. Ask Leo!. Retrieved 2012-11-18.
  5. ↑ 《Computer Language - Issue 06 (1985-02)(CL Publications)(US)》. February 1985.
  6. ↑ Leibson, Steve (1985년 2월 1일). “Software Reviews: Expert team analyzes 21 C compilers”. 《Computer Language》. 2020년 6월 5일에 확인함.
  7. ↑ Ladd, Scott Robert (1990년 8월 1일). 《Optimizing With Microsoft C 6.0》. 《닥터 돕스 저널》. 2023년 7월 3일에 원본 문서에서 보존된 문서.
  8. ↑ Myers, Ben (1992년 7월 1일). “Microsoft C/C++”. 《PC Magazine》 (지프 데이비스). 387쪽. 2023년 12월 21일에 확인함.
  9. ↑ “News/Software Pipeline Announced”. 《인포월드》 (InfoWorld Media Group). 1993년 3월 15일. 2023년 12월 21일에 확인함.
  10. ↑ Retrieved from http://support.microsoft.com/kb/196831.
  11. 1 2 “Visual C++ is a strong development tool”. 《InfoWorld》. 1993년 6월 21일. 94면. 2025년 4월 7일에 확인함.
  12. ↑ “Rival DOS Extenders debut at show”. 《InfoWorld》. 1993년 3월 1일. 18면.
  13. ↑ “Visual C++ 1.5 integrates OLE, ODBC”. 《InfoWorld》. 1993년 11월 8일. 5면.
  14. ↑ “Microsoft set to prerelease 32-bit Visual C++”. 《InfoWorld》. 1993년 7월 19일. 12면.
  15. ↑ “C++ IDEs evolve”. 《InfoWorld》. 1994년 4월 4일. 79면.
  16. ↑ “Microsoft Visual C++ Strategy”.
  17. 1 2 Cullens, Chane; Blackwell, Ken (1995). 《Cross-Platform Development Using Visual C++》. M&T Books. ISBN 1-55851-428-7. 2024년 1월 27일에 확인함.
  18. ↑ Plamondon, James (1997년 10월 9일). “Generalized Evangelism Timeline” (PDF). Microsoft Corporation. 2007년 2월 2일에 원본 문서 (PDF)에서 보존된 문서. 2024년 1월 27일에 확인함.
  19. 1 2 “Obsolete Products”. 2005년 8월 14일에 원본 문서에서 보존된 문서.
  20. ↑ Toth, Viktor (1996). 〈1〉. 《Visual C++ 4.0 unleashed》. Indianapolis: SAMS Publishing. ISBN 9780672308741. 2013년 7월 26일에 확인함.
  21. ↑ “History of Visual Studio (Part 3)”. 2021년 8월 6일.
  22. ↑ “Major Changes from Visual C++ 4.0 to 4.2”. 2010년 2월 28일에 원본 문서에서 보존된 문서. 2018년 4월 18일에 확인함.
  23. ↑ “Major Changes from Visual C++ 4.2 to 5.0”.
  24. ↑ “Microsoft Visual C++ 5.0 Learning Edition”. 《마이크로소프트》. 1999년 4월 27일에 원본 문서에서 보존된 문서.
  25. ↑ “Microsoft Visual C++ 5.0 Professional Edition”. 《마이크로소프트》. 1999년 4월 27일에 원본 문서에서 보존된 문서.
  26. ↑ “Microsoft Visual C++ 5.0 Enterprise Edition”. 《마이크로소프트》. 1999년 4월 17일에 원본 문서에서 보존된 문서.
  27. ↑ “Microsoft Visual C++ 5.0 RISC Edition”. 《마이크로소프트》. 1999년 4월 29일에 원본 문서에서 보존된 문서.
  28. ↑ Shields, Nathan P. (2018년 6월 8일). “Criminal Complaint”. 미국 법무부. 128면. This alone is not a dispositive link, as Visual C++ 6.0, released in 1998, still has proponents mostly because it does not require the installation of Microsoft’s .NET framework in order to run, as later versions of Visual C++ do.
  29. ↑ “Major Changes from Visual C++ 5.0 to 6.0”. 2008년 9월 14일에 원본 문서에서 보존된 문서.
  30. ↑ This page stresses that Users must also be running Windows 98, Windows NT 4.0, or Windows 2000. Retrieved from http://msdn2.microsoft.com/en-us/vstudio/aa718349.aspx.
  31. ↑ Douglas Boling :Programming Microsoft Windows CE .NET, Third Edition Microsoft Press; 3rd edition (June 25, 2003) Paperback: 1264 pages ISBN 978-0735618848 - Companion CD with Microsoft eMbedded Visual C++ 4.0 Service Pack 2 보관됨 2013-03-09 - 웨이백 머신
  32. ↑ How to: Modify WINVER and _WIN32_WINNT
  33. ↑ Breaking Changes
  34. ↑ Windows Platforms (CRT)
  35. ↑ “Visual C++ 2008 Breaking Changes”. 2023년 5월 25일.
  36. ↑ Visual C++ Team Blog. “IntelliSense, part 2: The Future”. 2008년 3월 12일에 확인함.
  37. ↑ “Why IntelliSense is not supported for C++/CLI in Visual Studio 2010”. 2011년 3월 13일에 확인함.
  38. ↑ Visual C++ Team Blog (2009년 5월 27일). “Rebuilding Intellisense”.
  39. ↑ Visual C++ Team Blog. “Visual C++ Code Generation in Visual Studio 2010”.
  40. ↑ “C++0x Core Language Features In VC10: The Table”.
  41. ↑ “Stephan T. Lavavej: Everything you ever wanted to know about nullptr”.
  42. ↑ Microsoft Windows SDK Blog. “Released: Windows SDK for Windows 7 and .NET Framework 4”.
  43. ↑ FIX: Visual C++ compilers are removed when you upgrade Visual Studio 2010 Professional or Visual Studio 2010 Express to Visual Studio 2010 SP1 if Windows SDK v7.1 is installed
  44. ↑ “What's New for Visual C++ in Visual Studio 2012”. 《마이크로소프트 개발자 네트워크》. Microsoft. 2012년 11월 29일. 2015년 9월 20일에 확인함.
  45. ↑ “What's New for Visual C++ in Visual Studio 2013”. 《마이크로소프트 개발자 네트워크》. Microsoft. 2015년 4월 28일. 2015년 9월 20일에 확인함.
  46. ↑ Eric Battalio (2015년 7월 20일). “Visual Studio 2015 RTM Now Available”. 《Visual C++ Team Blog》. Microsoft.
  47. ↑ Stephan T. Lavavej (2015년 6월 19일). “C++11/14/17 Features In VS 2015 RTM”. 《Visual C++ Team Blog》. Microsoft.
  48. ↑ Reviewing Microsoft's Automatic Insertion of Telemetry into C++ Binaries
  49. ↑ “Visual Studio adding telemetry function calls to binary? • /r/cpp”. 《레딧》. 2016년 5월 7일. 2016년 8월 17일에 확인함.
  50. ↑ Julia Liuson (2017년 3월 7일). “Announcing Visual Studio 2017 General Availability… and more”. 《Visual Studio Team Blog》. Microsoft.
  51. ↑ Amanda Silver (2019년 2월 14일). “Join us April 2nd for the Launch of Visual Studio 2019!”. 《Visual Studio Team Blog》. Microsoft.
  52. ↑ Amanda Silver (2021년 11월 8일). “Visual Studio 2022 now available”. 《Visual Studio Team Blog》. Microsoft.
  53. ↑ “Pre-defined Compiler Macros / Wiki / Compilers”. 《dev.to》. 2018년 5월 22일. 2023년 2월 20일에 확인함.
  54. ↑ “Predefined Macros / Microsoft Learn”. 《learn.microsoft.com》. 2022년 8월 8일. 2023년 5월 26일에 확인함.
  55. ↑ Microsoft MSDN: Breaking Changes in Visual C++
  56. ↑ Microsoft MSDN: Containers (Modern C++)
  57. ↑ Microsoft MSDN: Portability At ABI Boundaries (Modern C++)
  58. ↑ Microsoft forum: Binary compatibility across Visual C++ versions 보관됨 2013-02-16 - archive.today
  59. ↑ docs.microsoft.com: C++ binary compatibility between Visual Studio 2015, 2017, and 2019
  60. 1 2 C Run-Time Libraries
  61. ↑ “Compatibility” (미국 영어). 《Microsoft: CRT library features》. 2022년 10월 26일.
  62. ↑ “C99 support”. 《Microsoft Connect》. 2016년 3월 4일에 원본 문서에서 보존된 문서. 2015년 9월 21일에 확인함.
  63. ↑ “What's New for Visual C++ in Visual Studio 2013”. 《마이크로소프트 개발자 네트워크》. Microsoft. 2015년 4월 28일.
  64. ↑ Pat Brenner (2013년 7월 19일). “C99 library support in Visual Studio 2013”. 《Visual C++ Team Blog》. Microsoft.
  65. ↑ “What's New for Visual C++ in Visual Studio 2015”. 《마이크로소프트 개발자 네트워크》. Microsoft. 2018년 1월 3일.
  66. ↑ “Walkthrough: Compile a C program on the command line”. 《Visual C++ Documentation》. Microsoft. 2022년 5월 10일.
  67. ↑ “MSVC 2017 does not support _Generic (type generic macros) in C”.
  68. ↑ Luvsanbat, Bat-Ulzii (2018년 7월 6일). “MSVC Preprocessor Progress towards Conformance”. 《Visual Studio Team Blog》. Microsoft. 2024년 3월 3일에 원본 문서에서 보존된 문서.
  69. ↑ “C++20 Features and Fixes”. 《레딧》. 2020년 7월 3일.
  70. ↑ “C11 and C17 Standard Support Arriving in MSVC”. 2020년 9월 14일.
  71. ↑ “C11 Atomics in Visual Studio 2022 version 17.5 Preview 2”. 2022년 12월 13일.
  72. ↑ “C11 Threads in Visual Studio 2022 version 17.8 Preview 2”. 2023년 9월 26일.
  73. ↑ Murphy, Adrian (2023년 11월 14일). “Visual Studio 17.8 now available!” (미국 영어). 《Visual Studio Blog》. 2024년 1월 12일에 확인함.
  74. ↑ “Two-phase name lookup support comes to MSVC”. 2017년 9월 11일.
  75. ↑ Apiki, Steven; Udell, Jon (February 1989). “Smoothing Out C”. 《BYTE》. 170–186쪽. 2024년 10월 8일에 확인함.

더 읽어보기

외부 링크