C Π²ΠΈΠ·ΡƒΠ°Π» студио: C ΠΈ C++ Π² Visual Studio

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

C ΠΈ C++ Π² Visual Studio


  • Π‘Ρ‚Π°Ρ‚ΡŒΡ



ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π­Ρ‚Π° докумСнтация для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° ΠΊ Visual StudioΒ 2022. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ вСрсии VisualΒ Studio, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ сСлСктор ВСрсия. Он находится Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части оглавлСния Π½Π° этой страницС.

Если Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅ РаспространяСмый ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Microsoft Visual C++, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с послСдними ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌΠΈ вСрсиями Visual C++.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π­Ρ‚Π° докумСнтация для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° ΠΊ Visual StudioΒ 2019. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ вСрсии VisualΒ Studio, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ сСлСктор ВСрсия. Он находится Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части оглавлСния Π½Π° этой страницС.

Если Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅ РаспространяСмый ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Microsoft Visual C++, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с послСдними ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌΠΈ вСрсиями Visual C++.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π­Ρ‚Π° докумСнтация для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° ΠΊ Visual StudioΒ 2017. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ вСрсии VisualΒ Studio, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ сСлСктор ВСрсия. Он находится Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части оглавлСния Π½Π° этой страницС.

Если Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅ РаспространяСмый ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Microsoft Visual C++, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с послСдними ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌΠΈ вСрсиями Visual C++.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π­Ρ‚Π° докумСнтация для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° ΠΊ Visual StudioΒ 2015. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ вСрсии VisualΒ Studio, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ сСлСктор ВСрсия. Он находится Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части оглавлСния Π½Π° этой страницС.

Если Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅ РаспространяСмый ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Microsoft Visual C++, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с послСдними ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌΠΈ вСрсиями Visual C++.

Microsoft Visual C++ (MSVC)Β β€” это Π½Π°Π±ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ срСдств Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° языках ассСмблСра, C++ ΠΈ C, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ входят Π² состав Visual Studio Π² Windows. Π­Ρ‚ΠΈ срСдства ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ собствСнныС классичСскиС ΠΈ сСрвСрныС прилоТСния Windows, прилоТСния ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Windows (UWP) ΠΈΠ»ΠΈ управляСмыС прилоТСния ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° .NET Framework. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ кроссплатформСнных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π² Windows, Linux, Android ΠΈ iOS. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ MSVC ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ прилоТСния ΠΈΠ· простых ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² самыС слоТныС ΠΈ слоТныС прилоТСния для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² Windows. Π—Π°ΠΏΠΈΡΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² устройств ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈΠ»ΠΈ кроссплатформСнных ΠΈΠ³Ρ€ для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройств. ΠΠ°Ρ†Π΅Π»ΠΈΠ²Π°Ρ‚ΡŒ всС, ΠΎΡ‚ самых ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… устройств Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π²Π΅Ρ‰Π΅ΠΉ Π΄ΠΎ Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… вычислСний с нСсколькими сСрвСрами Π² ΠΎΠ±Π»Π°ΠΊΠ΅ Azure.

Visual StudioΒ 2015, 2017, 2019 ΠΈ 2022 ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Visual StudioΒ 2019 (Π½Π°Π±ΠΎΡ€ срСдств компилятора вСрсии 142) ΠΈΠ»ΠΈ Visual StudioΒ 2017 (Π½Π°Π±ΠΎΡ€ срСдств компилятора вСрсии 141) ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π½Π°Π±ΠΎΡ€ срСдств ΠΈΠ· Visual StudioΒ 2017 (вСрсия 141) ΠΈ Visual StudioΒ 2015 (вСрсия 140).

НовыС возмоТности C++ Π² Visual Studio

НовыС возмоТности C++ Π² Visual Studio 2022
Π£Π·Π½Π°ΠΉΡ‚Π΅ ΠΎ Π½ΠΎΠ²Ρ‹Ρ… возмоТностях Visual Studio 2022.

НовыС возмоТности C++ Π² Visual Studio 2019
Π£Π·Π½Π°ΠΉΡ‚Π΅ ΠΎ Π½ΠΎΠ²Ρ‹Ρ… возмоТностях Visual Studio 2019.

НовыС возмоТности C++ Π² Visual Studio 2017
Π£Π·Π½Π°ΠΉΡ‚Π΅ ΠΎ Π½ΠΎΠ²Ρ‹Ρ… возмоТностях Visual Studio 2017.

НовыС возмоТности C++ Π² вСрсиях Visual Studio с 2003 ΠΏΠΎ 2015
НовыС возмоТности C++ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ вСрсии Visual Studio с 2003 Π΄ΠΎΒ 2015.

Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ соотвСтствия C++ Π² Visual Studio
БвСдСния ΠΎΠ± ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡΡ… соотвСтствия C++ Π² Visual Studio.

БоотвСтствиС стандартам языка MicrosoftΒ C/C++
НаходитС свСдСния ΠΎ состоянии соотвСтствия языка Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² компиляторС MSVC ΠΏΠΎ вСрсии Visual Studio.

Π–ΡƒΡ€Π½Π°Π» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Microsoft C/C++ Π² вСрсиях с 2003 ΠΏΠΎ 2015
ΠžΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с критичСскими измСнСниями Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… вСрсиях.

Установка Visual Studio Π‘++ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ с Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΡ… вСрсий

Установка ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π‘++ Π² Visual Studio
Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ Visual Studio ΠΈ установитС Π½Π°Π±ΠΎΡ€ инструмСнтов Microsoft C/C++.

Руководство ΠΏΠΎ пСрСносу ΠΈ обновлСнию Microsoft C++
Руководство ΠΏΠΎ пСрСносу ΠΊΠΎΠ΄Π° ΠΈ обновлСнию ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π΄ΠΎ Visual Studio 2015 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ вСрсии. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π±ΠΎΠ»Π΅Π΅ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ компилятора со стандартом C++, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΠ»ΠΈ врСмя компиляции ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ бСзопасности, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ устранСниС рисков Spectre.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ C++ Π² выпусках Visual Studio
БвСдСния ΠΎ Ρ€Π°Π·Π½Ρ‹Ρ… рСдакциях Visual C++.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹
Π£Π·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ компилятором Microsoft C/C++.

ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π‘++ с использованиСм Visual Studio

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ C++
Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎ соврСмСнных ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ… программирования Π½Π° C++ Π½Π° основС C ++ 11 ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΡ… вСрсий для написания Π±Ρ‹ΡΡ‚Ρ€ΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΈ бСзопасного ΠΊΠΎΠ΄Π° ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ошибок программирования Π² стилС C.

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ C++
Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎ C++, ΠΎΠ±Π·ΠΎΡ€ соврСмСнного C++ ΠΈ ссылки Π½Π° ΠΊΠ½ΠΈΠ³ΠΈ, ΡΡ‚Π°Ρ‚ΡŒΠΈ, обсуТдСния ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ событиях

Знакомство с Visual Studio ΠΈ созданиС ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° C++
БвСдСния для Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с C++ Π² Visual Studio.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° VisualΒ StudioΒ C++
БвСдСния ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΊΠΎΠ΄Π° C++, прСдоставлСнных ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ†ΠΈΠ΅ΠΉ ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚.

БрСдства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Visual Studio C/C++

ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½Π° C++ Π² Visual Studio
ИспользованиС ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Visual Studio для создания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², рСдактирования ΠΊΠΎΠ΄Π°, создания ссылок Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, компиляции, ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, создания ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Ρ… тСстов, выполнСния статичСского Π°Π½Π°Π»ΠΈΠ·Π°, развСртывания ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΈ систСмы сборки
Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Visual Studio C++, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ CMake ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ компилятора MSVC ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ°.

НаписаниС ΠΈ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π° C++
Как ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ C++ для Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, понимания ΠΈ написания ΠΊΠΎΠ΄Π° ΠΈ пСрСмСщСния ΠΏΠΎ Π½Π΅ΠΌΡƒ.

ΠžΡ‚Π»Π°Π΄ΠΊΠ° машинного ΠΊΠΎΠ΄Π°
БвСдСния ΠΎΠ± использовании ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° Visual Studio с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ C++.

ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния ΠΎΠ± Π°Π½Π°Π»ΠΈΠ·Π΅ ΠΊΠΎΠ΄Π° Π² C/C++
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ SAL ΠΈΠ»ΠΈ срСдства ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ C++ Core Guidelines для выполнСния статичСского Π°Π½Π°Π»ΠΈΠ·Π°.

НаписаниС ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Ρ… тСстов для C/C++ Π² Visual Studio
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Ρ… тСстов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ тСстирования ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚ для C++, Google Test, Boost.Test ΠΈΠ»ΠΈ CTest.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ C/C++ с использованиСм Visual Studio

ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ прилоТСния (C++)
БвСдСния ΠΎ создании классичСских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° C++ для Windows.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ .NET с использованиСм C++/CLI
БвСдСния ΠΎ создании Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ DLL, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° C++ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ .NET, написанными Π½Π° Ρ‚Π°ΠΊΠΈΡ… языках, ΠΊΠ°ΠΊ C# ΠΈΠ»ΠΈ Visual Basic.

Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Π΅ прилоТСния Windows (C++)
Руководства ΠΈ справочныС ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ Π² Π¦Π΅Π½Ρ‚Ρ€Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Windows. БвСдСния ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ UWP см. Π² Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Windows ΠΈ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ прилоТСния UWP Π½Π°Β C++.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ для Linux
Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Visual Studio позволяСт Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ с ОБ Linux для компиляции с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GCC.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ DLL C/C++ Π² Visual Studio
Π£Π·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Win32, ATL ΠΈ MFC для создания Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ DLL для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² Windows. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ свСдСния ΠΎ компиляции ΠΈ рСгистрации Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ DLL.

ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
ИспользованиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… шаблонов, C++ AMP, OpenMP ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², связанных с ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ Π² Windows.

Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ обСспСчСния бСзопасности
Π—Π°Ρ‰ΠΈΡ‚Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΎΡ‚ врСдоносного ΠΊΠΎΠ΄Π° ΠΈ нСсанкционированного использования.

ΠžΠ±Π»Π°Ρ‡Π½ΠΎΠ΅ ΠΈ Π²Π΅Π±-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅
Π’ C++ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ нСсколько ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² для соСдинСния с Π²Π΅Π±-ΡƒΠ·Π»ΠΎΠΌ ΠΈ ΠΎΠ±Π»Π°ΠΊΠΎΠΌ.

Доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ
ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… Ρ‡Π΅Ρ€Π΅Π· ODBC ΠΈ OLE DB.

ВСкст ΠΈ строки
ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°ΠΌΠΈ тСкста ΠΈ строк ΠΈ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ°Ρ… для Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ.

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ языку C++

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ языку C++
Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΎΠ΅ руководство ΠΏΠΎ языку программирования C++ Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚.

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ языку C
Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΎΠ΅ руководство ΠΏΠΎ языку программирования C Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚.

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ прСпроцСссору Π² C/C++
ΠžΠ±Ρ‰ΠΈΠΉ справочник ΠΏΠΎ прСпроцСссору, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для языков C ΠΈ C++.

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ языку C++/CX
Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΎΠ΅ руководство ΠΏΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌ Microsoft для языка C++ для создания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Windows C++, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² срСды выполнСния Windows C++, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ прилоТСниями Windows Π½Π° основС JavaScript, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ³Ρ€ Windows DirectX ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с интСнсивным использованиСм Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ.

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ языку C++/CLI
Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ ECMA для языка программирования C++/CLI.

Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ компилятора ΠΈ язык ассСмблСра
Руководства ΠΏΠΎ встроСнным функциям компилятора, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈΠ»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² компиляторах Microsoft C/C++ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C/C++, доступныС Π² Visual Studio

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ свСдСния ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ… C ΠΈ C++, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² Visual Studio.

Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния C
Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ с ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, ΠΊΠ°ΠΊ извСстно, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΡƒΠ³Ρ€ΠΎΠ·Ρƒ бСзопасности.

Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C++
Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° C++.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΡˆΠ°Π±Π»ΠΎΠ½Π½Ρ‹Ρ… классов (ATL)
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ COM.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Microsoft Foundation Class (MFC)
ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° создания классичСских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ интСрфСйсами ΠΈΠ»ΠΈ интСрфСйсами Π² стилС Office.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… шаблонов
АсинхронныС ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, выполняСмыС Π² ЦП.

C++ AMP (C++ Accelerated Massive Parallelism)
Массово-ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, выполняСмыС Π² GPU.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° шаблонов срСды выполнСния Windows (WRL)
ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Windows (UWP).

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ .NET с использованиСм C++/CLI
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ для общСязыковой срСды выполнСния (CLR).

ИспользованиС сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π‘++ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π² Visual Studio

ΠšΡ€ΠΎΡΡΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки vcpkg Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΈ установку Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ 900Β Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ C++ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния см. Π½Π° страницС ΠΎ vcpkg.

Microsoft Learn Q&A
Microsoft Learn Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Ρ„ΠΎΡ€ΡƒΠΌΡ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Ρ‚Π΅Π³ C++ Π² сообщСниС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠΌΠΎΡ‰ΡŒ сообщСства ΠΏΠΎ вопросам, связанным с C++.

Как ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅ с Π½Π°Π±ΠΎΡ€ΠΎΠΌ инструмСнтов Microsoft C/C++
Π£Π·Π½Π°ΠΉΡ‚Π΅ ΠΎ создании эффСктивных ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… с использованиСм Π½Π°Π±ΠΎΡ€Π° инструмСнтов Microsoft C/C++ (компилятора, ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ° ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… срСдств) ΠΈ информация ΠΎ способах ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°.

Π‘Π»ΠΎΠ³ Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΠΎ C++ (ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚)
ОписаниС Π½ΠΎΠ²Ρ‹Ρ… возмоТностСй ΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ информация ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² инструмСнтов C++ Π² Visual Studio.

БообщСство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Visual Studio (C++)
ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΠΌΠΎΡ‰ΡŒ, сообщитС ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… ΠΈΠ»ΠΈ ΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ прСдлоТСния ΠΏΠΎ использованию C++ Π² Visual Studio.

Must-have ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹ ΠΈ нСсколько полСзностСй для Π‘\Π‘++ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² VS Code / Π₯Π°Π±Ρ€

Π£Π΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ Π΄ΠΎ сих ΠΏΠΎΡ€ Π½Π° Π₯Π°Π±Ρ€Π΅ Π½Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΊΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² для Visual Studio Code для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΠΏΠΈΡˆΠ΅Ρ‚ Π½Π° Π‘/Π‘++. Microsoft Π² своСм Π±Π»ΠΎΠ³Π΅ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΡ‚Π°Ρ‚ΡŒΡŽ, совсСм Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ уровня с инструкциСй ΠΏΠΎ настройкС. Но Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ Π₯Π°Π±Ρ€Π°, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ· Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², обойдСтся Π±Π΅Π· Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ инструкции. Π•ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ нСсколько ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΎΠΊ для Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Π½ΠΎ Π½Π΅ для Π‘++.

НавСрноС это связано с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π‘++ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ тяТСловСсныС IDE, Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅ Visual Studio.

Но Π² Linux ΠΈ MacOS с ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΌΠΈ IDE всё Π½Π΅ Ρ‚Π°ΠΊ просто, Π΄Π° ΠΈ тяТСлая срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π΅ всСгда Π½ΡƒΠΆΠ½Π° ΠΈΠ»ΠΈ просто Π½Π΅ хочСтся Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Π― ΠΆΠ΅ Ρ…ΠΎΡ‡Ρƒ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ вашС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΏΠ»Π°Π³ΠΈΠ½Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Π»Π΅Π³Ρ‡Π°ΡŽΡ‚ Тизнь ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ настройки ΠΈ особСнности VS Code, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ просто ΡƒΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ.


Вопрос ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ VS Code IDE ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ ΠΊΠΎΠ΄Π° вСсьма Ρ…ΠΎΠ»ΠΈΠ²Π°Ρ€Π½Ρ‹ΠΉ ΠΈ Π½Π΅ являСтся Ρ†Π΅Π»ΡŒΡŽ этой ΡΡ‚Π°Ρ‚ΡŒΠΈ. Π― Π±ΡƒΠ΄Ρƒ всё-Ρ‚Π°ΠΊΠΈ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‘ IDE, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ усилиями ΠΎΠ½Π° ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ основныС сцСнарии IDE, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ°.

НСмного истории


ΠŸΠ΅Ρ€Π²Π°Ρ IDE, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я использовал начиная свой ΠΏΡƒΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ Π±Ρ‹Π»Π°, ΡƒΠΆΠ΅ историчСская, Borland C++ 2.0. ΠŸΠΎΡ‚ΠΎΠΌ я пСрСсСл Π½Π° Visual Studio 6.0 ΠΈ оставался (Π΄Π° ΠΈ сСйчас ΠΎΡΡ‚Π°ΡŽΡΡŒ) Ρ„Π°Π½Π°Ρ‚ΠΎΠΌ этой IDE. Но Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ Linux (это Π±Ρ‹Π», Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, 2006 Π³ΠΎΠ΄). Π’ Linux, ΠΏΠ΅Ρ€Π²ΠΎΠ΅ врСмя, я Π±Ρ‹Π» шокС ΠΎΡ‚ отсутствия ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Ρ… IDE β€” ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Eclipse, мучился ΠΈ плСвался. НС Π±ΡƒΠ΄Ρƒ Π²Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ, Π½ΠΎ Π² ΠΈΡ‚ΠΎΠ³Π΅ я разобрался с Make, CMake, научился быстро ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΏΠΎΡ‚ΠΎΠΌ Π±Ρ‹Π»ΠΈ Π»ΠΈΠ½ΠΊΠ΅Ρ€ скрипты, gdb, kdb ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ всСго интСрСсного. Π’ это врСмя я полюбил ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ использовал vim Π½Π° протяТСнии Π»Π΅Ρ‚ 5. ПослС Ρ‡Π΅Π³ΠΎ постСпСнно ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΡΡ Π½Π° Sublime Text, Π·Π°Ρ‚Π΅ΠΌ Π½Π° Π΅Π³ΠΎ Π²Ρ‚ΠΎΡ€ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ, Π° сСйчас ΡƒΠΆΠ΅ Π½Π° Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ я ΡƒΠΆΠ΅ мСньшС ΠΏΠΈΡˆΡƒ ΠΊΠΎΠ΄Π°, ΠΈ большС занимаюсь Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² ΠΈ процСссов, Π½ΠΎ пСриодичСски ΠΏΠΈΡΠ°Ρ‚ΡŒ всС ΠΆΠ΅ приходится β€” это ΠΈ Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΡŒ нашим ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Π°ΠΌ со встраиваниСм нашСго SDK.

А Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ SDK Ρƒ нас Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Windows, Π½ΠΎ ΠΈ для Linux ΠΈ MacOS, Ρ‚ΠΎ ΠΈ ΠΊΠΎΠ΄ приходится ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Π½ΠΈΡ…. Π’ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ Π³ΠΎΠ΄Ρƒ я ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» VS Code, ΠΈ ΠΎΠ½ стал для мСня Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²ΠΎΠΉ Sublime Text.

Если ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ ΠΈΡ… ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ, Ρ‚ΠΎ Sublime Text, Π½Π° ΠΌΠΎΠΉ Π»ΠΈΡ‡Π½Ρ‹ΠΉ взгляд, Π΄Π°Ρ‘Ρ‚ большС возмоТностСй ΠΏΠΎ настройкС ΠΈ ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅, Π½ΠΎ VS Code большС Π΄Π°Ρ‘Ρ‚ ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ. И Ссли ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ Π½Π΅Ρ‚ Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΏΠΎΠ΄Π±ΠΎΡ€ΠΊΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ для Sublime Text ΠΈΠ»ΠΈ Ссли Π²Ρ‹ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° этим Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ Π½Π΅ пользовались, Ρ‚ΠΎ Visual Studio Code —отличная ΡˆΡ‚ΡƒΠΊΠ°.

Начну с Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ. Π˜Ρ… для Π‘\Π‘++ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π² VS Code Π½Π΅ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈ Π³Π»Π°Π²Π½Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… это ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ:

C/C++ for Visual Studio Code

Бсылка Π½Π° marketplace


Π­Ρ‚ΠΎ основноС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π‘\Π‘++ Π² VS Code, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ разрабатываСтся Microsoft. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС всСго, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ Π΄Π°Ρ‘Ρ‚ Π΅ΡΡ‚ΡŒ Π½Π° страницС Π² ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚Π΅, я ΠΆΠ΅ здСсь упомяну Ρ‚ΠΎΠ»ΡŒΠΊΠΎ самоС Π³Π»Π°Π²Π½ΠΎΠ΅ (Π½Π° ΠΌΠΎΠΉ взгляд ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ):

  • Π€ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° (с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ clang-format)
  • АвтодополнСниС
  • Поиск символов ΠΏΠΎ ΠΊΠΎΠ΄Ρƒ
  • Go to Definition/Declaration (Π² Ρ‚ΠΎΠΌ числС Peek)
  • Class/Method Navigation
  • Signature Help
  • Quick Info (Hover)
  • Error Squiggles


ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ для Windows (PDB, MinGW/Cygwin), Linux ΠΈ macOS ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

Основная ΡΡ‚Π°Ρ‚ΡŒΡ ΠΎΡ‚ Microsoft ΠΏΡ€ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΠΈ Π΅Π³ΠΎ возмоТности с красивыми ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°ΠΌΠΈ находится Ρ‚ΡƒΡ‚ β€” ссылка.

Надо ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Microsoft большиС ΠΌΠΎΠ»ΠΎΠ΄Ρ†Ρ‹ ΠΈ постоянно ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ это Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Π½ΠΎΠ²Ρ‹Π΅ возмоТности этого Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² dev Π±Π»ΠΎΠ³Π΅ ΠΎΡ‚ Microsoft ΠΈ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ я Ρ€Π΅ΡˆΠΈΠ» Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΡƒΡ‚ ΠΎ самых Π½ΠΎΠ²Ρ‹Ρ… ΠΈΠ· Π½ΠΈΡ….

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ настройки для IntelliSense


Π’ ΠΌΠ°Π΅ 2018 Π² VS Code Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для IntelliSense Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ settings.json. Π­Ρ‚ΠΈ настройки автоматичСски ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΊΠΎ всСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌ.

ΠžΡ‡Π΅Π½ΡŒ полСзная ΡˆΡ‚ΡƒΠΊΠ° ΠΊΠΎΠ³Π΄Π° Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ±Ρ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ include, ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ компилятор ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° встроСнного Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° ΠΏΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅


Π’ Π΄Π΅ΠΊΠ°Π±Ρ€Π΅ 2018 Π³ΠΎΠ΄Π° Microsoft Π΄ΠΎΠ±Π°Π²ΠΈΠ»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ Π‘\Π‘++ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²ΠΎ встроСнном Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅, вмСсто открытия ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° с Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠΌ. УправляСтся эта Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ externalConsole Π² launch.json.

Пока поддСрТиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ cppdbg ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Linux ΠΈ Windows, Π½ΠΎ Π² MacOS Ρ‚ΠΎΠΆΠ΅ ΠΎΠ±Π΅Ρ‰Π°Π»ΠΈ Π·Π°Π²Π΅Π·Ρ‚ΠΈ Π² скором Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Выглядит это Ρ‚Π°ΠΊ:

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ для докумСнтирования


Π­Ρ‚Ρƒ ΡˆΡ‚ΡƒΠΊΡƒ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ мСсяцС. Π Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΡƒΡ‚ особо Π½Π΅Ρ‡Π΅Π³ΠΎ, поэтому просто ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚ Microsoft.

ПишСм простой класс Box ΠΈ добавляСм ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π² стандартном Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅:

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ассоциируСтся с классами ΠΈΠ»ΠΈ функциями Ρ‡Π»Π΅Π½Π°ΠΌ класса ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π²ΠΎ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… подсказках ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

Выглядит это Ρ‚Π°ΠΊ:

Π Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ


Π’ послСднСм ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΎΡ‚ 6 фСвраля Microsoft Π΄ΠΎΠ±Π°Π²ΠΈΠ»Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π‘++ Π² Docker ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ…. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ…, Π½ΠΎ ΠΈ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ². ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ β€” Π² Π±Π»ΠΎΠ³Π΅ Microsoft.

Π‘Π°ΠΌ я ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡΡŒ β€” Π½Π΅Ρ‚ нСобходимости. Но навСрняка это ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, поэтому я ΠΈ Ρ€Π΅ΡˆΠΈΠ» Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ это Π² ΡΡ‚Π°Ρ‚ΡŒΡŽ.

Ну Π° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ возвращаСмся ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌ для VS Code, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅.

cquery

ссылка Π½Π° marketplace

Π•Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ достаточно Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ для Π‘/Π‘++/Objective-C Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π² VS Code. Основная ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ β€” Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Π±Ρ‹Π»ΠΎ спроСктировано ΠΈ протСстировано Π½Π° ΠΎΡ‡Π΅Π½ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° Chromium. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ пригодится Ρ‚Π°ΠΌ, Π³Π΄Π΅ стандартноС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΠΎΡ‚ Microsoft ΠΈ Π΅Π³ΠΎ IntelliSense пасуСт (Ρ‚Π°ΠΊΠΎΠ΅ часто случаСт ΠΊΠΎΠ³Π΄Π° Ρƒ вас большС 100Мб Π‘++ исходников).

Бписок всСх основных возмоТностСй Ρ‚Π°ΠΊΠΎΠΉ:

  • code completion (with both signature help and snippets)
  • finding definition/references
  • call (caller/callee) hierarchy, inheritance (base/derived) hierarchy
  • symbol rename
  • document symbols and approximate search of workspace symbol
  • hover information
  • diagnostics
  • code actions (clang FixIts)
  • preprocessor skipped regions
  • #include auto-complete, undefined type include insertion, include quick-jump (goto definition, document links)
  • auto-implement functions without a definition
  • semantic highlighting, including support for rainbow semantic highlighting


Π’ Π½Π°Ρ‡Π°Π»Π΅ я Ρ…ΠΎΡ‚Π΅Π» пСрСвСсти этот список, Π½ΠΎ ΠΏΠΎΡ‚ΠΎΠΌ понял, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ понятий Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ красивых общСпринятых ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΎΠ², поэтому Ρ€Π΅ΡˆΠΈΠ» ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ. По ссылкам Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС ΠΈ Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€Π°Ρ†ΠΈΡŽ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… возмоТностСй.

Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ вСсьма ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅, Π½ΠΎ Π½Π° github Π½Π΅Ρ‚ активности с ноября 2018 Π³ΠΎΠ΄Π°. И судя ΠΏΠΎ issue β€” Is this project dead? #867 ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ остановился Π² Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠΈ. Знамя ΠΏΠΎΠ΄Ρ…Π²Π°Ρ‚ΠΈΠ» Ρ„ΠΎΡ€ΠΊ https://github.com/MaskRay/ccls, Π½ΠΎ я Π΅Π³ΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ провСрял, поэтому Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ ΠΌΠΎΠ³Ρƒ. Π‘ΠΊΠΎΡ€Π΅Π΅ всСго ccls со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ просто Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ cquery.

Easy C++ projects

ссылка Π½Π° marketplace

Если Π΄Π²Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Π±Ρ‹Π»ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ с большим количСством возмоТностСй, Ρ‚ΠΎ это выполняСт ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ β€” созданиС простого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° для MSVC, GCC ΠΈΠ»ΠΈ Clang.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΌΠ΅Π΅Ρ‚:

  • ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΠΎΠ²ΠΎΠΉ Makefile для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
  • ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ VS Code для сборки ΠΈ запуска
  • ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ VS Code для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ (поддСрТиваСтся Visual Studio Debugger, GDB ΠΈ LLDB)
  • Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ классы ΠΈΠ· нСбольшого списка шаблонов


ΠŸΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡΡ ΠΊΠ°ΠΊ для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ, Ρ‚Π°ΠΊ ΠΈ для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². ΠŸΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΊΠΈΠ΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΈΠΉ Helloworld ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½Π°Π΄ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ быстро ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ.

Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ это Ρ‚Π°ΠΊ:

CMake Tools

ссылка Π½Π° marketplace

Как ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· названия, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ добавляСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ CMake. Как подсказали Π² коммСнтариях, ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ всС ΠΏΡ€ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Ρ€ΡƒΠΊΠ°ΠΌΠΈ, Π½ΠΎ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅.

ПослС установки Π½Π°Π΄ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ настройку. Π’Ρ‹Π±Ρ€Π°Ρ‚ΡŒ toolchain:


ПослС Ρ‡Π΅Π³ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ для сборки:


И всС. МоТно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΌΠ΅Π΅Ρ‚ само Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ CMake Ρ„Π°ΠΉΠ»Ρ‹.

Todo Tree

ссылка Π½Π° marketplace

Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ для создания TODO списков для VS Code нСсколько. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ любоС. МнС большС всСго ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»ΠΎΡΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ это. ЕдинствСнный нСдостаток β€” ΠΎΠ½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ https://github.com/BurntSushi/ripgrep, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Π²Π΅Π·Π΄Π΅ Π΅ΡΡ‚ΡŒ ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ ΠΈ ставится Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Π’ стандартных рСпозиториях Debian Π΅Π³ΠΎ ΠΏΠΎΠΊΠ° Π½Π΅Ρ‚.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ выглядит Ρ‚Π°ΠΊ:

GitLens

ссылка Π½Π° marketplace

Как слСдуСт ΠΈΠ· названия Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ β€” ΠΎΠ½ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ с git. Надо ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎ-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² VS Code ΡƒΠΆΠ΅ встроСна нСкоторая ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° git, Π½ΠΎ вСсьма ограничСнная.

Основная Ρ„ΠΈΡˆΠΊΠ° GitLens β€” ΠΏΠΎΠΊΠ°Π· прямо Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ строкС ΠΊΡ‚ΠΎ ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ мСнял Π΅Ρ‘ послСдний Ρ€Π°Π·. Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ добавляСт Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ поиск ΠΏΠΎ истории Ρ„Π°ΠΉΠ»Π°, поиск ΠΏΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ, ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ Π²ΠΈΠ΄ для сравнСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… вСрсий Ρ„Π°ΠΉΠ»Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. Для дСмонстрации Ρ€Π°Π±ΠΎΡ‚Ρ‹ я просто Π²ΡΡ‚Π°Π²Π»ΡŽ gif со страницы marketΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ наглядно ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ возмоТности Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ.

Git History

ссылка Π½Π° marketplace

Π•Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‰Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ с git, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΠΊΠ°Π· истории. ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π² GitLens ΠΌΠ½Π΅ Ρ‚Π°ΠΊ ΠΈ Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ Π½Π°ΠΉΡ‚ΠΈ подходящСС ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ истории ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° со всСми Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ. Если ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π·Π½Π°Π΅Ρ‚, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ Π²ΠΈΠ΄ (см. Π½ΠΈΠΆΠ΅) ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ GitLens ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Π² коммСнтариях, Π±ΡƒΠ΄Ρƒ ΠΎΡ‡Π΅Π½ΡŒ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½.

vscode-icons

ссылка Π½Π° marketplace

Одно ΠΈΠ· многочислСнных Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ добавляСт ΠΈΠΊΠΎΠ½ΠΊΠΈ для Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π² Explorer панСль. Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ Ρ‚Π°ΠΊΠΈΡ… Π² ΠΌΠ°Ρ€ΠΊΠ΅Ρ‚Π΅ масса, Π° это являСтся самым популярным. ΠœΠΎΠΆΠ΅Ρ‚Π΅ смСло Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅, ΠΌΠ½Π΅ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»ΠΈΡΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ эти ΠΈΠΊΠΎΠ½ΠΊΠΈ.

Settings Sync

ссылка Π½Π° marketplace

Π•Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅, Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· названия.

Для синхронизации Π²Π°ΡˆΠΈΡ… настроСк ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ GitHub account token ΠΈ Gist. Π›ΠΈΡ‡Π½ΠΎ для мСня β€” ΠΎΠ΄Π½ΠΎ ΠΈΠ· самых ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠΈ Windows, ΠΈ Linux, ΠΈ Mac.

Code Spell Checker

ссылка Π½Π° marketplace

Если ваш английский ΠΏΠΎΠΊΠ° Π΄Π°Π»Π΅ΠΊ ΠΎΡ‚ ΠΈΠ΄Π΅Π°Π»Π° ΠΈΠ»ΠΈ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΈ, Ρ‚ΠΎ это Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ лишним. ΠŸΡ€ΠΈ нСобходимости ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ русского языка.

Из приятных особСнностСй β€” Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹Π΅ слова, Π½ΠΎ ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹.

WakaTime

ссылка Π½Π° marketplace
WakaTime β€” это сСрвис, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΡ€Π°ΡΠΈΠ²ΡƒΡŽ статистику\Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ\ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ ΠΏΠΎ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. Π¨Ρ‚ΡƒΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ эстСтичСская, Π½ΠΎ ΠΌΠ½Π΅ ΠΎΡ‡Π΅Π½ΡŒ нравится. Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ соотвСтствСнно добавляСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ сСрвиса ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² VSCode. ΠŸΡ€ΠΎ сам сСрвис ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚ΡƒΡ‚.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ красивых Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ²:

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ возмоТности сСрвиса бСсплатныС ΠΈ подписки Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚.

На этом с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ всё. Π₯очСтся Ρ‚Π°ΠΊΠΆΠ΅ подСлится нСсколькими ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌΠΈ настройками самого VS Code, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ сообщСству.

НСсколько ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… настроСк


По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ VSCode отправляСт Ρ‚Π΅Π»Π΅ΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ ΠΏΡ€ΠΈ ΠΏΠ°Π΄Π΅Π½ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… Π² Microsoft. Если вас ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ это Π½Π΅ устраиваСт, Ρ‚ΠΎ смСло ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°ΠΉΡ‚Π΅ Π² настройках:

  • Telemetry: Enable Crash Report
  • Telemetry: Enable Telemetry


Π― Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ всСм Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ автосохранСниС Ρ„Π°ΠΉΠ»ΠΎΠ². Π¨Ρ‚ΡƒΠΊΠ° банальная, Π½ΠΎ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚ΡŒ Π΅Ρ‘ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΡΡ‚ΡŒ слоТно. МСня Π²Ρ‹Ρ€ΡƒΡ‡Π°Π»Π° ΡƒΠΆΠ΅ Π½Π΅ Ρ€Π°Π·. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π°.

  • Files: Auto Save


Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ настройка Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌΡ‹Ρ… символов Π² ΠΊΠΎΠ΄Π΅. По ΠΌΠΎΠ΅ΠΌΡƒ Π»ΠΈΡ‡Π½ΠΎΠΌΡƒ мнСнию ΠΊΡ€Π°ΠΉΠ½Π΅ полСзная ΡˆΡ‚ΡƒΠΊΠ°, которая ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ сразу Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ форматируСтся Ρ‚Π°Π±Π°ΠΌΠΈ, Π° Π½Π΅ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ. Π”Π° ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ лишниС символы Ρ‚Π°ΠΌ, Π³Π΄Π΅ ΠΈΡ… Π±Ρ‹Ρ‚ΡŒ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ.

  • Editor: Render Whitespace


Для всСх, ΠΊΡ‚ΠΎ Π»ΡŽΠ±ΠΈΡ‚ ΠΏΠ»Π°Π²Π½ΡƒΡŽ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΡƒ:

  • Smooth Scrolling


Показ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… прямо Π² ΠΊΠΎΠ΄Π΅ ΠΏΡ€ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅. Π•Ρ‰Ρ‘ ΠΎΠ΄Π½Π° ΠΎΡ‡Π΅Π½ΡŒ полСзная ΡˆΡ‚ΡƒΠΊΠ°, которая ΠΏΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π°. Π‘Π°ΠΌΡ‹Π΅ глазастыС ΡƒΠΆΠ΅ навСрняка Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ этой настройки Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… скринов, Π½ΠΎ я Π½Π° всякий случай Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠ»ΠΎΠΆΡƒ

  • Inline Values

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ настройку я сам ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ написании ΡΡ‚Π°Ρ‚ΡŒΠΈ. ZenMode позволяСт Π²Π°ΠΌ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ всС лишниС ΠΎΠΊΠ½Π° ΠΈ мСню ΠΈ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ„Π°ΠΉΠ» с ΠΊΠΎΠ΄ΠΎΠΌ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Ρƒ постоянно ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚Π΅, ΠΊΠΎΠ³Π΄Π° приходится Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΊΠΎΠ΄Π΅. На ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚Π΅ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΊΠ½Π° часто Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹, Π° ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ пространства ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ!

  • ZenMode

P.S.


Если ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ подСлится своими интСрСсными Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ для VS Code ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ настройки β€” welcome Π² ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ. Π‘ ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΈΠ΅ΠΌ дополню ΡΡ‚Π°Ρ‚ΡŒΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π° стала Π΅Ρ‰Ρ‘ ΠΏΠΎΠ»Π΅Π·Π½Π΅Π΅.

Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ C с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Visual Studio 2012

спросил

ИзмСнСно
7 Π»Π΅Ρ‚, 2 мСсяца Π½Π°Π·Π°Π΄

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΎ
43ΠΊ Ρ€Π°Π·

Π― ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° C с использованиСм Microsoft Visual Studio 2012.
ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ я Π½Π΅ ΠΌΠΎΠ³Ρƒ Π½Π°ΠΉΡ‚ΠΈ способ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ прямо Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅. Π― нашСл это Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ http://msdn.microsoft.com/en-us/library/bb384838.aspx, Π½ΠΎ ΠΎΠ½ΠΎ ΠΌΠ½Π΅ Π½Π΅ нравится.
ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹ ΠΏΠΎΡ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ½Π΅ способ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° языкС C прямо Π² Visual Studio 2012?

  • c
  • Visual-Studio
  • Visual-C++
  • Visual-Studio-2012
  • Visual-C++-2012

3

НСмного слоТно ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ простыС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ C90 ΠΈ C++x0 (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ частично ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅) Π² VS2010 (ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Visual Studio 11, я Π΅Ρ‰Π΅ Π½Π΅ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Π½Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π² Π½Π΅ΠΉ).

Π§Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊ это ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ C++ Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ скомпилированного Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° — это основноС Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ нСзависимый ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΠΎΠ΄ (Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, консольноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅).

Π•ΡΡ‚ΡŒ нСсколько способов ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это. Одним ΠΈΠ· способов являСтся созданиС ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ консольного прилоТСния Win32 C++, Π² ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ мастСрС Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Π²Ρ‚ΠΎΡ€ΡƒΡŽ страницу (Π½Π°ΠΆΠ°Π² Β«Π”Π°Π»Π΅Π΅Β»), Π° Π·Π°Ρ‚Π΅ΠΌ ΡΠ½ΡΡ‚ΡŒ Ρ„Π»Π°ΠΆΠΎΠΊ Β«Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ скомпилированный Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊΒ». Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ C++ (ΠΈ C) нСпосрСдствСнно Π² VS.

2

Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ «свойства -> c/c++ -> advanced -> Compile asΒ», ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Β«c codeΒ»

ΠΈΠ»ΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ /TC

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ пустой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ C++ Π² Visual Studio (Π€Π°ΠΉΠ» — > Новый ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ -> Visual C++ -> ΠŸΡƒΡΡ‚ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚), Π·Π°Ρ‚Π΅ΠΌ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΊ Π½Π΅ΠΌΡƒ исходный Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .c (Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ, Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ -> Новый элСмСнт -> Π€Π°ΠΉΠ» C++ (. cpp) ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ имя Ρ„Π°ΠΉΠ»Π°).

ΠŸΡ€ΠΈ сборкС компилятор скомпилируСт Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ C (ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Visual C++ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ C9).0, Π° Π½Π΅ C99, поэтому Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Π΅ возмоТности языка C ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ нСльзя).

0

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ компилятор Visual C++ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС Ρ„Π°ΠΉΠ»Ρ‹, ΠΎΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° .c, ΠΊΠ°ΠΊ исходный ΠΊΠΎΠ΄ C, Π° всС Ρ„Π°ΠΉΠ»Ρ‹, ΠΎΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° .cpp, β€” ΠΊΠ°ΠΊ исходный ΠΊΠΎΠ΄ C++. Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ компилятор ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ всС Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠ°ΠΊ C нСзависимо ΠΎΡ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ Ρ„Π°ΠΉΠ»Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ компилятора /Tc.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: MSDN Visual Studio 2013, http://msdn.microsoft.com/en-us/library/bb384838.aspx пошаговоС руководство

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ мСню, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Β«ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ -> Бвойства». Π—Π°Ρ‚Π΅ΠΌ Π² «Бвойствах ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈΒ» Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ панСль Β«C/C++ -> Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΒ». Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список Β«ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΒ» с «По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽΒ» Π½Π° Β«ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ C (/TC). НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒΒ», Π° Π·Π°Ρ‚Π΅ΠΌ «ОК», Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ.

Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ win 32console, снимитС ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΡƒ с ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ скомпилированного Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ пустой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.. Π—Π°Ρ‚Π΅ΠΌ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт, Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» ..cpp, Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΡƒΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .c., ΠΈ всС Π³ΠΎΡ‚ΠΎΠ²ΠΎ для компиляции ΠΊΠΎΠ΄ΠΎΠ² c..

Π’ΠΎ ΠΆΠ΅ самоС ΠΈ для Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Ρ… вСрсий VS, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Π½ΠΎ @Alexander Galkin,

  1. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΎΡ‚ Π΄ΠΎ Бвойства ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
  2. Π‘/Π‘++
  3. Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ
  4. Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ « ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ » Π½Π° « ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ C(/TC) »

Π§Ρ‚ΠΎΠ±Ρ‹ наглядно ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ это, посмотритС Π½Π° снимок экрана Π½ΠΈΠΆΠ΅;

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΈΠ»ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡ‚Π΅ Π² систСму

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Google

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π΅Π· Facebook

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΏΠΎΡ‡Ρ‚Ρƒ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π³ΠΎΡΡ‚ΡŒ

ЭлСктронная ΠΏΠΎΡ‡Ρ‚Π°

ВрСбуСтся, Π½ΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ отобраТаСтся

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π³ΠΎΡΡ‚ΡŒ

ЭлСктронная ΠΏΠΎΡ‡Ρ‚Π°

ВрСбуСтся, Π½ΠΎ Π½Π΅ отобраТаСтся

НаТимая Β«ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ свой ΠΎΡ‚Π²Π΅Ρ‚Β», Π²Ρ‹ ΡΠΎΠ³Π»Π°ΡˆΠ°Π΅Ρ‚Π΅ΡΡŒ с нашими условиями обслуТивания ΠΈ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ ΠΈ поняли Π½Π°ΡˆΡƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ кодСкс повСдСния.

Код Visual Studio ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° C Π² Linux | ΠΎΡ‚ Tarang Patel

Π§Ρ‚Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· 4 ΠΌΠΈΠ½.

Β·

12 фСвраля 2019 Π³.

Π― ΠΈΠ³Ρ€Π°Π» с Код Visual Studio (VSCode) для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠΎΠ΄Π° C Π² Linux. Π’ послСднСС врСмя я стал ΠΏΠΎΠΊΠ»ΠΎΠ½Π½ΠΈΠΊΠΎΠΌ Visual Studio Code, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, ΠΊΠ°ΠΊ ΠΌΠ½Π΅ каТСтся, Π΄Π°Π²Π½ΠΎ являСтся ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ бСсплатным ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠΌ ΠΎΡ‚ Microsoft для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Π― ΠΏΠΎΠΊΠ°ΠΆΡƒ, ΠΊΠ°ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Visual Studio Π½Π° Linux CentOS ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ программирования Π½Π° языкС C , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ Π² ΠΊΠΎΠ΄Π΅. Π˜ΠΌΠ΅ΠΉΡ‚Π΅ Π² Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° C/C++ Π² Visual Studio Code (VSCode) всС Π΅Ρ‰Π΅ находится Π² вСрсии 9.0129 ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ просмотр , поэтому Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ оТидалось. Команда VSCode усСрдно Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ устранСниСм Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΈ выпуском Π½ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

ΠžΡ‚ΠΊΠ°Π· ΠΎΡ‚ отвСтствСнности: Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ написания этой ΡΡ‚Π°Ρ‚ΡŒΠΈ я Π½Π΅ являюсь Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Visual Studio Code.

Установка VSCode Π½Π° CentOS

Microsoft влюбилась Π² Linux с мая 2015 Π³ΠΎΠ΄Π°. Π­Ρ‚Π° стратСгия ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈΠΌ ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡ΡŒ ΠΈ ΡΡ‚Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ друТСствСнной ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ VSCode доступСн Π² срСдах Linux, macOS ΠΈ Windows.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ ΠΈ самыС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ шаги описаны здСсь https://code.visualstudio.com/docs/setup/linux. Π― ΠΏΠΎΠΊΠ°ΠΆΡƒ Π²Π°ΠΌ руководство ΠΏΠΎ быстрому запуску для CentOS .

ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ экзСмпляр Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π²Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

 sudo rpm --import https://packages.microsoft.com/keys/microsoft.ascsudo sh -c 'echo -e "[code]\nname=Visual Studio Code \nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos .d/vscode.repo' 

ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ ΠΈ установитС VSCode:

 yum check-update 
sudo yum install code

Установка VSCode Π±Ρ‹Π»Π° простой…

Установка Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ C/C++

VSCode трСбуСтся ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ возмоТности рСдактирования ΠΊΠΎΠ΄Π° для C. Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ΠΎ Microsoft. НаТмитС Π½Π° Π·Π½Π°Ρ‡ΠΎΠΊ Extensions Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ поиск Β«cΒ». ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ поиска β€” Β«c/c++Β» ΠΎΡ‚ Microsoft β€” это популярноС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ я использовал. УстановитС Π΅Π³ΠΎ.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ пространства Π½Π° VSCode ΠΈ Hello World, ΠΊΠΎΠ΄

ΠŸΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ послС установки VSCode, β€” ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Π½Π΅Π³ΠΎ Ρ„Π°ΠΉΠ» ΠΊΠΎΠ΄Π° (first.c). Π—Π°Ρ‚Π΅ΠΌ Π² VSCode Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Β«Π€Π°ΠΉΠ»Β» -> Β«Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ Π² Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒΒ»β€¦ Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ созданный ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Ρ‡Ρ‚ΠΎΠ±Ρ‹ VSCode Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ (.vscode) для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π·Π°Π΄Π°Ρ‡ компиляции ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, описанных Π΄Π°Π»Π΅Π΅ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅. Π‘ΠΌ. ΠΌΠΎΠ΅ Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ пространство Π½ΠΈΠΆΠ΅.

Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ пространство c_project Π² ΠΌΠΎΠ΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅

VSCode добавляСт Ρ„Π°ΠΉΠ» c_cpp_properties.json для использования Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ³ΠΎ рСдактирования для C. Моя вСрсия этого Ρ„Π°ΠΉΠ»Π°:

 { 
"ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ": [
{
"имя": "Linux",
"includePath": [
"${workspaceFolder}/**"
],
"опрСдСляСт": [],
"compilerPath ": "/bin/gcc",
"cStandard": "c11",
"cppStandard": "c++14",
"intelliSenseMode": "clang-x64"
}
],
"вСрсия": 4
}

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΊΠΎΠ΄Π° с использованиСм tasks. json :

Для компиляции ΠΊΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ tasks.json Ρ„Π°ΠΉΠ» Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ctrl + shift + p , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΠΊΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅

> Π—Π°Π΄Π°Ρ‡ΠΈ: ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ , ΠΊΠΎΠΌΠ°Π½Π΄Π°

> Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» tasks.json ΠΈΠ· шаблонов

90 002 > Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π”Ρ€ΡƒΠ³ΠΈΠ΅ .

БозданиС кода с использованиСм tasks.json :

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π³Ρ€ΡƒΠΏΠΏΡƒ сборки, Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ctrl + shift + b , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΠΊΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄. Π­Ρ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ Π³Ρ€ΡƒΠΏΠΏΡƒ сборки. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ НСт Π·Π°Π΄Π°Ρ‡ сборки… ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ build first.c . Π’ вашСм случаС это Π±ΡƒΠ΄Π΅Ρ‚ вашС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΈΠ· tasks.json

ΠžΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ вСрсия tasks.json ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½ΠΈΠΆΠ΅:

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ label β€” Β«build first.cΒ». Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ любой тСкст, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρƒ ΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΊΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² launch. json :

 { 
// Π‘ΠΌ. https://go.microsoft.com/fwlink/?LinkId=733558
// Π·Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ tasks.json
"вСрсия": "2.0.0",
"Π·Π°Π΄Π°Ρ‡ΠΈ": [
{
"ΠΌΠ΅Ρ‚ΠΊΠ°": "сборка first.c",
"Ρ‚ΠΈΠΏ": "ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ°",
"ΠΊΠΎΠΌΠ°Π½Π΄Π°": "gcc -Wall - g first.c -o first",
"group": {
"kind": "build",
"isDefault": true
}
}
]
}

Π’Π°ΠΆΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π’Ρ‹ΡˆΠ΅, Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ tasks.json β€” gcc. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ компилятор gcc для компиляции ΠΊΠΎΠ΄Π°. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вас установлСн компилятор gcc. Π’ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅ запуститС gcc --version для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ вСрсии gcc. Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ -Wall для отобраТСния подробностСй Π² сборкС ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ -g , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ОБ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см. здСсь: https://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html#Debugging-Options

На этом этапС Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π² состоянии ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свой ΠΊΠΎΠ΄.

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ launch.json :

Для использования ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π²Π°ΠΌ понадобится launch.json . ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΠžΡ‚Π»Π°Π΄ΡŒΡ‚Π΅ прСдставлСниС Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ ΠΈ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π·Π½Π°Ρ‡ΠΎΠΊ ΡˆΠ΅ΡΡ‚Π΅Ρ€Π΅Π½ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ» launch.json . Π― ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π» Ρ‚Π΅Π³ preLaunchTasks Π² Ρ„Π°ΠΉΠ»Π΅ launch.json , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ соотвСтствовал Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΈΠ· Ρ„Π°ΠΉΠ»Π° tasks.json . Π― Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π» Ρ‚Π΅Π³ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ имя Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°. Π’ΠΎΡ‚ моя ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ вСрсия launch.json .

 { 
// Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ IntelliSense, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°Ρ….
// НавСдитС ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΌΡ‹ΡˆΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ описания ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ².
// Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ посСтитС: https://go.microsoft.com/fwlink/?linkid=830387
"вСрсия": "0.2.0",
"ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ": [
{
"имя": " (gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/first",
"args": [],
"stopAtEntry" : false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": ΠΏΡ€Π°Π²Π΄Π°,
"MIMode": "gdb",
"preLaunchTask": "сборка first.