CLion 2019.3 рдпрд╣рд╛рдБ рд╣реИ! рдмреЗрд╣рддрд░ рд╕рдВрдкрд╛рджрдХ рдЧрддрд┐ рдФрд░ рд╕рдмрд╕реЗ рдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдирдИ рд╕реБрд╡рд┐рдзрд╛рдПрдБ

рдирдорд╕реНрдХрд╛рд░, рд╣реЗрдмреНрд░! рдХрдИ рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдирдП рд╕рд╛рд▓ рдХреА рдЫреБрдЯреНрдЯрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░реА рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЙрдкрд╣рд╛рд░ рдЦрд░реАрджрдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдирдП рд╕рд╛рд▓ рдХреА рд▓рдВрдмреА рдЫреБрдЯреНрдЯрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╛рддреНрд░рд╛ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реИред рдФрд░ JetBrains рдореЗрдВ, рдЕрднреА рднреА рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЙрддреНрдкрд╛рдж рд░рд┐рд▓реАрдЬрд╝ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЧрд░реНрдо рд╕рдордп рд╣реИред рдЖрдЬ рдореИрдВ C рдФрд░ C ++ - CLion 2019.3 рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╡рд┐рдХрд╛рд╕ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреА рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд░рд┐рд▓реАрдЬрд╝ рдХреА рдЧрдИ рдЦрдмрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдкрдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреА рдЬрд▓реНрджреА рдореЗрдВ рд╣реВрдВред

рдХреНрд▓реЗрдпрди рд░рд┐рд▓реАрдЬ


рдЗрд╕ рд░рд┐рд▓реАрдЬ рдХрд╛ рдореБрдЦреНрдп рд▓рдХреНрд╖реНрдп рдерд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рджрдпрдиреАрдп рдпрд╣ рдзреНрд╡рдирд┐, рдЧреБрдгрд╡рддреНрддрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╣рдордиреЗ рдЙрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛, рдЬреЛ рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдкрд░реЗрд╢рд╛рди рдХрд░ рд░рд╣реЗ рд╣реИрдВ - рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕рдВрдкрд╛рджрдХ рдХреА рдЙрддреНрдкрд╛рджрдХрддрд╛ рдФрд░ рдЬрд╡рд╛рдмрджреЗрд╣реА, рдФрд░ рджреВрд╕рд░реА рдмрд╛рдд, рдмрдЧ, рдХрдорд┐рдпрд╛рдВ рдФрд░ рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп, рд▓реЗрдХрд┐рди рдЧрд╛рдпрдм рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВред

рдЗрд╕ рд░рд┐рд▓реАрдЬ рдореЗрдВ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:

  • рд╕рдВрдкрд╛рджрдХ рдХреА рдЧрддрд┐ рдФрд░ рдЬрд╡рд╛рдмрджреЗрд╣реА рдореЗрдВ рд╕реБрдзрд╛рд░, рдореБрдЦреНрдп рд░реВрдк рд╕реЗ Clangd рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╣рдорд╛рд░реЗ рдЗрдВрдЬрди рдореЗрдВ рд╕реНрд╡рддрдГ рдкреВрд░реНрдгрддрд╛ рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред
  • CMake рдореЗрдВ рдирд┐рдВрдЬрд╛ рдЬрдирд░реЗрдЯрд░, рдбрд┐рдлрд╝реЙрд▓реНрдЯ CMake рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдЕрдиреНрдп рдбрд┐рдЬрд╝рд╛рдЗрди рдореЙрдбрд▓ рдореЗрдВ рд╕реБрдзрд╛рд░ред
  • рдбрд┐рдмрдЧрд░ рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдореЗрдВ рдЕрджреНрдпрддрдиред
  • рд╣реЗрдбрд░ рдФрд░ рдЦрдЯреНрдЯреА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдирдИ рдХреНрд░рд┐рдпрд╛ред
  • рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг: рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдЪреЗрдХ, рд╕рд╛рде рд╣реА рд╕реАрдПрдордХреЗ рдФрд░ рдбреЙрдХреНрд╕реАрдЬрди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╡рд░реНрддрдиреА рдЬрд╛рдБрдЪред
  • C ++ 20 рдорд╛рдирдХ рд╕реЗ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред
  • рдХреЛрдб рдХрд╡рд░реЗрдЬ рдореЗрдЯреНрд░рд┐рдХреНрд╕ред
  • WSL2, Microsoft рдХрд╛ рдлрд╝реЙрд░реНрдореЗрдЯрд┐рдВрдЧ рдФрд░ рдирд╛рдордХрд░рдг рдкрд░рдВрдкрд░рд╛рдПрдБ, VCS рд╕рдорд░реНрдерди рдЕрдкрдбреЗрдЯ, рдФрд░ рдмрд╣реБрдд рдХреБрдЫред

рд╣рдо рдиреАрдЪреЗ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдЕрднреА рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ, рддреЛ рд╣рдорд╛рд░реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ рдмрд┐рд▓реНрдб рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ ред рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, 30 рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐: рд╢реБрд▓реНрдХ рдкрд░реАрдХреНрд╖рдг рдЙрдкрд▓рдмреНрдз рд╣реИред

рд╕рдВрдкрд╛рджрдХ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди


рдЖрдБрдХрдбрд╝реЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╣рдорд╛рд░реЗ рдХрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣рдореЗрдВ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣рдордд рд╣реИрдВ, рд╕реАрдПрд▓рдУрдПрди рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдСрдЯреЛ-рдкреВрд░реНрдг рд╣реИ ред рдпрд╣ рдЙрд╕ рдкрд░ рдерд╛ рдХрд┐ рд╣рдордиреЗ рдЗрд╕ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рддрд╛рдХрд┐ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдПрдХ рдФрд░ рдЬреЛрдбрд╝рд╛, Clangd рдХреЗ рдЖрдзрд╛рд░ рдкрд░, IDE рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╕реНрд╡рдд: рдкреВрд░реНрдг рдкреНрд░рджрд╛рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдПред рд▓рдмреНрдмреЛрд▓реБрдЖрдм рдпрд╣ рд╣реИ рдХрд┐ рд╕рднреА рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЬреИрд╕реЗ рд╣реА рдкрд╣рд▓реЗ рдкрд░рд┐рдгрд╛рдо рддреИрдпрд╛рд░ рд╣реЛрддреЗ рд╣реИрдВ, CLion рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдПрдХ рдбреНрд░реЙрдк-рдбрд╛рдЙрди рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛рдиреБрд╕рд╛рд░ рд▓реЛрдб рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИред

рдмреЗрд╢рдХ, рд╣рдо рдпрд╣ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рдВрдХрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд▓рд╛рдн рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рдорд╛рдк рд╕реЗ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╕рд░рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рд╕реАрдПрд▓рдУрдПрди рд╡рд┐рдХреНрд░реЗрддрд╛ рдФрд░ рдХреНрд▓реИрдВрдЧрдб-рдЖрдзрд╛рд░рд┐рдд рд╡рд┐рдХреНрд░реЗрддрд╛ рдХреА рдЧрддрд┐ рдореЗрдВ рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди LLVM, Qt, Boost, Eigen рдЬреИрд╕реА рдЬрдЯрд┐рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░, Clangd рдХреЗ рдкрд╣рд▓реЗ рд╕реМ рдкрд░рд┐рдгрд╛рдо рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВред рдЦреБрдж рдХреЗ рд▓рд┐рдП рдиреНрдпрд╛рдпрд╛рдзреАрд╢:

рдПрд▓рдПрд▓рд╡реАрдПрдо рдкреВрд░рд╛ рдХрд┐рдпрд╛

Qt рдкреВрд░рд╛ рдХрд░рдирд╛


CLion рдЕрдВрдЧреНрд░реЗрдЬреА рднрд╛рд╖рд╛ рдХреЗ рдмреНрд▓реЙрдЧ рдкрд░ рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рдореЗрдВ рдорд╛рдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВред

рдЕрдиреНрдп рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реБрдзрд╛рд░реЛрдВ рдореЗрдВ, рдпрд╣ IDE рд▓реЙрдиреНрдЪ рд╕рдордп рдХреЗ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рддреНрд╡рд░рдг рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИред рдпрд╣ рд╢реБрд░реБрдЖрдд рдореЗрдВ рдХрдИ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд░рдХреЗ, рд╢реБрд░реБрдЖрдд рдореЗрдВ рднрд░реА рд╣реБрдИ рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдкреБрдирд░реНрдЧрдард┐рдд рдХрд░рдиреЗ рдФрд░ рдореИрдХрдУрдПрд╕ рдкрд░ рдлрд╝реЙрдиреНрдЯ рд▓реЛрдбрд┐рдВрдЧ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдХреЗ рд╣рд╛рд╕рд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рддреЗрдЬреА рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрдЦреНрдпрд╛рдПрдВ рдкрд░реНрдпрд╛рд╡рд░рдг, рдХрд╛рд░, рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдФрд░ рдЕрдиреНрдп рдХрд╛рд░рдХреЛрдВ рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИрдВред

CLion рдореЗрдВ, рд╣рдорд╛рд░реЗ рдорд╣рд╛рди рдЕрдлрд╕реЛрд╕ рдХреЗ рд▓рд┐рдП, рдЕрднреА рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИрдВрдЧ рд╣реИрдВред рд╣рдо рдЙрдиреНрд╣реЗрдВ рдореВрд▓ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдореВрд╣рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рдХреЗ рдмрд╛рдж рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рд░рд┐рд▓реАрдЬ рдореЗрдВ, рд╣рдордиреЗ рдПрдХ рдУрдкрди рдпреВрдЬреЗрдЬ рд╡реНрдпреВ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдлреНрд░реАрдЬ рддрдп рдХрд┐рдпрд╛, рдЬрдм рдПрдХ рдШреЛрд╖рдгрд╛ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЬрдм рдмреНрд░реЗрдб рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдФрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рдбрд┐рд▓реАрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдореЗрдВ #include рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдирд╛рдо рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдирд┐рд▓рдВрдмрди рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЬрд░реВрд░реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рднрд╡рд┐рд╖реНрдп рдХреЗ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдЗрд╕ рдХрд╛рдо рдХреЛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗред

рдФрд░ рдЕрдВрдд рдореЗрдВ, рдирд╛рдо рдмрджрд▓рдирд╛ рддреНрд╡рд░рдг refactoring ред рдпрд╣ рд░рд┐рдлреИрдХреНрдЯрд┐рдВрдЧ рди рдХреЗрд╡рд▓ рдХреЛрдб рдореЗрдВ рдирд╛рдо рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рдирд╛рдо рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╢рд╛рдмреНрджрд┐рдХ рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рднреА рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдореЗрд╢рд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдирд╛рдо рдХреА рдЦреЛрдЬ рдЖрдИрдбреАрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдХреЗрдд рджрд┐рдП рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреА рдЧрдИ рдереА, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдирд╛рдо рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд╕реЗ рдПрдХ рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╛рдо рдЦреЛрдЬрдиреЗ рдореЗрдВ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рджреЗрд░реА рд╣реБрдИред рдЕрдм рдЖрдк рдкрд╣рд▓реЗ рдХреЗрд╡рд▓ рдХреЛрдб рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЦреЛрдЬ рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рдЦреЛрдЬ рд╢реБрд░реВ рдХрд░реЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реЗрдЯрд┐рдВрдЧреНрд╕ / рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдВ рдкрд░ рдЬрд╛рдПрдВ рд╕рдВрдкрд╛рджрдХ | рд╕рд╛рдорд╛рдиреНрдп | рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХреЛ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП "рдЗрди-рдкреНрд▓реЗрд╕ рдореЛрдб рд╕рдХреНрд╖рдо рдХрд░реЗрдВ"ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЬрдм рд░рд┐рдлреИрдХреНрдЯрд┐рдВрдЧ рдХреЛ рд╡рд┐рдВрдбреЛрдЬ (рд▓рд┐рдирдХреНрд╕ / рдореИрдХ рдкрд░ 6F6, рдореИрдХрдУрдПрд╕ рдкрд░ Shift + F6) рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ CLion рддреБрд░рдВрдд рдирд╛рдо рдмрджрд▓реЗрдВ рдбрд╛рдпрд▓реЙрдЧ рдХреЛ рдЦреЛрд▓ рджреЗрдЧрд╛, рдЬрд╣рд╛рдВ рдЖрдк рдЦреЛрдЬ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдирд╛рдо рдмрджрд▓реЗрдВ рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡


CMake рдбрд┐рдЬрд╛рдЗрди рдореЙрдбрд▓ рдореЗрдВ рд╕реБрдзрд╛рд░


рдпрд╣рд╛рдВ, рдЖрдк рдореЗрдВ рд╕реЗ рдХрдИ рд▓реЛрдЧ рдореЗрдХрдлрд╛рдЗрд▓реНрд╕ рдХреЗ рд╕рдорд░реНрдерди рдХреА рдШреЛрд╖рдгрд╛ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реЛрдВрдЧреЗред рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рд╕рдВрдХрд▓рди рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдирдХреЗ рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рдЕрд░реНрдз-рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЙрдкрд▓рдмреНрдз рд╣реИред рдЕрдзрд┐рдХ рдореВрд▓ рд╕рдорд░реНрдерди рдЕрднреА рднреА рд╡рд┐рдХрд╛рд╕ рдХреЗ рдЕрдзреАрди рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рд░рд┐рд▓реАрдЬ рдЪрдХреНрд░ рдореЗрдВ рд╣рдордиреЗ рдХрд╛рдлреА рдкреНрд░рдЧрддрд┐ рдХреА рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдорд╛рд░реНрдЪ 2020 рдХреЗ рдЕрдВрдд рдХреЗ рдЖрд╕рдкрд╛рд╕, рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬ 2020.1 рдХреЗ рд▓рд┐рдП рдирдпрд╛ рд╕рдорд░реНрдерди рджрд┐рдЦрд╛рдиреЗ рдХрд╛ рд╣рд░ рдореМрдХрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рд╣рдордиреЗ CMake рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдкреНрд░рддреАрдХреНрд╖рд┐рдд рдЕрд╡рд╕рд░ рдмрдирд╛рдпрд╛ - рдХрд┐рд╕реА рднреА CMake рдЬрдирд░реЗрдЯрд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛, рдирд┐рдВрдЬрд╛ рдЬрдирд░реЗрдЯрд░ рд╕рд╣рд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЙрдореНрдореАрдж рд╣реИ! рдкрд╣рд▓реЗ, рд╣рдордиреЗ рдЗрд╕рдХреЗ рд╕рдорд╛рди рдореЗрдХрдлрд╛рдЗрд▓реНрд╕ рдФрд░ рдЬрдирд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╣рдордиреЗ рдкрд░рд┐рдгрд╛рдореА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ (рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд░реВрдк рд╕реЗ, рд╡реЗ рдереЗ -G "CodeBlocks - Unix Makefiles" , рдФрд░ Windows -G рдкрд░ "CodeBlocks - MinBW Makefiles" рдФрд░ -G "CodeBlocks - NMake Makefiles" )ред рдЕрдм рдЖрдк CLION рдореЗрдВ CMake рдкреНрд░реЛрдлрд╛рдЗрд▓ рдореЗрдВ рдХрд┐рд╕реА рднреА рдЬрдирд░реЗрдЯрд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ


рдпрд╣ рдХреЗрд╡рд▓ рд╕реАрдПрдордХреЗ рд╕рдВрд╕реНрдХрд░рдг 3.15 рдФрд░ рдЙрдЪреНрдЪрддрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╕рдВрднрд╡ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реАрдПрдордХреЗ рдлрд╝рд╛рдЗрд▓ рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ WSL / WSL2 рдХреЗ рд▓рд┐рдП рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рд╕рднреА рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЬрдирд░реЗрдЯрд░ Xcode рдФрд░ Visual Studio рдорд▓реНрдЯреА-рдЬреЗрдирд░реЗрдЯрд░ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд, рд╡реЗ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдЕрд╕реЗрдВрдмрд▓реА (рдбрд┐рдмрдЧ, рд░рд┐рд▓реАрдЬрд╝, рдЖрджрд┐) рдХреЗ рд▓рд┐рдП рдлрд╛рдЗрд▓реЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди CLion рдХреЗрд╡рд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рд╕реАрдПрдордХреЗ рдкреНрд░реЛрдлрд╛рдЗрд▓ред

рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдиреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реАрдПрдордХреЗ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рднреА рдкреЗрд╢ рдХреАрдВ ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рд╕реАрдПрд▓рдУрдПрди рдореЗрдВ рд╕рднреА рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рдЖрдк рдЙрд╕реА рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ рд╕реАрдПрдордХреЗ рдЬрдирд░реЗрдЯрд░ рдпрд╛ рд╕реАрдПрдордХреЗ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ред рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ | рдЕрдиреНрдп рд╕реЗрдЯрд┐рдВрдЧреНрд╕ | рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ ...

рд╕реАрдореЗрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ


рд╕реАрдПрдордХреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЙрдбрд▓ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реБрдзрд╛рд░реЛрдВ рдореЗрдВ рд╕реЗ, рдпрд╣ рдорд╛рдиреНрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрднреА рднреА рд▓рд╛рдпрдХ рд╣реИ, рднрд▓реЗ рд╣реА рдЕрдиреНрдп рдЕрдорд╛рдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдореМрдЬреВрдж рд╣реЛрдВред рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдЖрдкрдиреЗ рдХрдИ рджреВрд░рд╕реНрде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рд╣реИрдВ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЕрдиреБрдкрд▓рдмреНрдз рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рд╕реНрдерд╛рдиреАрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдбрд┐рдмрдЧрд░ рдПрдХреАрдХрд░рдг рдЕрджреНрдпрддрди


рдбрд┐рдмрдЧрд░реНрд╕ рдореЗрдВ, рд╣рдордиреЗ рдЙрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдФрд░ рдХрдорд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЬреЛ рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЪрд┐рдВрддрд┐рдд рдХрд░рддреА рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, CLion рдЕрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ .gdbinit / .lldbinit рдкрдврд╝рддрд╛ рд╣реИред рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реИ рдпрджрд┐ рдЖрдк рдХреБрдЫ рдбрд┐рдмрдЧрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдХрд╕реНрдЯрдорд╛рдЗрдЬрд╝ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдпрд╛ рд╕реБрдВрджрд░ рдкреНрд░рд┐рдВрдЯрд░ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдПред рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдЗрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдбреАрдмрдЧрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдерд╛ред рдЕрдм рдЖрдк рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реНрддрд░ рдкрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдбреАрдмрдЧрд░ рдореЗрдВ рд╣реА рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (рдкрдврд╝реЗрдВ GDB рдХреЗ рд▓рд┐рдП рдпрд╣ рдХреИрд╕реЗ рдХрд░реЗрдВ рдФрд░ LLDB рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдХрд░реЗрдВ)ред

LLDB init config


рдПрд▓рдПрд▓рдбреАрдмреА рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рд▓рд┐рдирдХреНрд╕ рдФрд░ рдореИрдХрдУрдПрд╕ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИред рдирдИ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ, рд╣рдордиреЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдПрд▓рдПрд▓рдбреАрдмреА рдХреЛ 9.0 рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдФрд░ рдЙрд╕реА рд╕рдордп рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕рднреА рдмрд┐рд▓реНрдЯ-рдЗрди рд╕реБрдВрджрд░ рдкреНрд░рд┐рдВрдЯрд░ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХреАред рдЗрд╕рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рджреЛрдиреЛрдВ рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдкрд░ рдорд╛рдирдХ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдХрд╛рдлреА рд╕реБрдзрд╛рд░ рд╣реБрдЖ рд╣реИред рд╡рд┐рд╕реНрддреГрдд рддреБрд▓рдирд╛ рд╣рдорд╛рд░реЗ рдЕрдВрдЧреНрд░реЗрдЬреА рднрд╛рд╖рд╛ рдХреЗ рдмреНрд▓реЙрдЧ рдкрд░ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ macOS рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдкрд░ libcdcxx рдХреА рддреБрд▓рдирд╛ рдореЗрдВ libc ++ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдордВрдЪ рдкрд░ рдЗрди рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк macOS рдкрд░ libstdcxx рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдмрддрд╛рдПрдВред

CLion рдХреЗ рдкрд╛рд╕ рдЕрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдХрдИ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ ред рдкреВрд░реА рддрд░рд╣ рд╕реЗ рджреВрд░рд╕реНрде рд╡рд┐рдХрд▓реНрдк рд╕реЗ, рдЬрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЕрд╕реЗрдВрдмрд▓реА рдФрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рджреЛрдиреЛрдВ рдПрдХ рджреВрд░рд╕реНрде рдорд╢реАрди рдкрд░ рд╣реЛрддреА рд╣реИрдВ, рддреЛ рдЙрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ рдХреЗрд╡рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдбреАрдмрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рджреВрд╕рд░реЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рд╣рдордиреЗ CLion - рд░рд┐рдореЛрдЯ GDB рд╕рд░реНрд╡рд░ рдореЗрдВ рдПрдХ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬреЛрдбрд╝рд╛ред рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЪрд▓реА рдЖ рд░рд╣реА GDB рд░рд┐рдореЛрдЯ рдбрд┐рдмрдЧ рдХреЗ рд╡рд┐рдкрд░реАрдд (рд╣рд╛рдБ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ рдирд╛рдо рдирд╣реАрдВ рд╣реИ, рд╣рдо рд╕рд╣рдордд рд╣реИрдВ), рдирдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ, CLion рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╕реНрд╡рдпрдВ рдмрдирд╛рддрд╛ рд╣реИ (рд╢рд╛рдпрдж рдЖрдкрдХреЛ рдХреНрд░реЙрд╕-рд╕рдВрдХрд▓рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ), рд░рд┐рдореЛрдЯ рдорд╢реАрди рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ, рдФрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ gdbserver рдХреЗ рддрд╣рдд рдЕрдкрдирд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд▓рд╛рддрд╛ рд╣реИред рдкреБрд░рд╛рдирд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЕрдм рдЬрдЯрд┐рд▓ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрдд рд╣реИ, рдЬрдм рдХреЛрдб рдПрдХ рдорд╢реАрди рдкрд░ рд╣реЛрддрд╛ рд╣реИ, рджреВрд╕рд░реЗ рдкрд░ рдЕрд╕реЗрдВрдмрд▓реА, рдФрд░ рддреАрд╕рд░реЗ рдкрд░ рдбрд┐рдмрдЧрд┐рдВрдЧред рдпрд╛ рдЕрдЧрд░ рдХреНрд░реЙрд╕-рдХрдВрдкрдЯреАрд╢рди рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред

рд╢реАрд░реНрд╖ рд▓реЗрдЦ / рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдкрд░ рдЬрд╛рдПрдВ


рд╣рд╛рдБ, рдпрд╣ рдХрд┐рдпрд╛! рд╣рдордиреЗ рдЕрдВрдд рдореЗрдВ рд╣реЗрдбрд░ рдФрд░ рдЦрдЯреНрдЯреА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдЬреЛрдбрд╝реАред рдкреБрд░рд╛рдиреЗ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдЧреЛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рддреАрдХ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдЕрдВрддрд░ рдХреНрдпрд╛ рд╣реИ? рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐, рдПрдХ рдЖрдо рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдПрдХреНрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ, рдЧреЛ рдЯреВ рд░рд┐рд▓реЗрдЯреЗрдб рд╕рд┐рдВрдмрд▓ рдмрд╣реБрдд рд╕рдЯреАрдХ рд╣реЛрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕рдмрд╕реЗ рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рдЪреБрдирддрд╛ рд╣реИред рдпрд╣ C ++ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд▓рдВрдмрд╛ рдФрд░ рд╣рдореЗрд╢рд╛ рд╕рд╣реА рдирд╣реАрдВ рд╣реИред рдирдпрд╛ рд╣реЗрдбрд░ / рд╕реЛрд░реНрд╕ рдПрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИ:

  • рдпрджрд┐ 500 тАЛтАЛрдПрдордПрд╕ рдХреЗ рднреАрддрд░ рдПрдХ рднреА рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ, рддреЛ рдЙрдкрдпреБрдХреНрдд рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдПрдХ рдбреНрд░реЙрдк-рдбрд╛рдЙрди рд╕реВрдЪреА рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдмрд╕реЗ рдЙрдкрдпреБрдХреНрдд рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред
  • рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдкрд╣рд▓реЗ рд╣реА рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░ рдЪреБрдХрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдлрд╝рд╛рдЗрд▓ рдЬрд╣рд╛рдБ рд╡рд╣ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реВрдЪреА рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рд╣реЛрдЧреАред
  • рд╕реВрдЪреА рдореЗрдВ рдЖрдЧреЗ рдЙрд╕реА рдирд╛рдо рд╕реЗ рдПрдХ рд╣реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рдлрд╛рдЗрд▓реЗрдВ рд╣реЛрдВрдЧреАред
  • рдФрд░ рдлрд┐рд░ рдорд┐рд▓рд╛рди рдШреЛрд╖рдгрд╛рдУрдВ рдФрд░ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рдкрд░ рдЬрд╛рдПрдВрдЧреЗред

рдпрд╣ рдЦреЛрдЬ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕рдХреЗ рд╕рд╛рде рдорд┐рд▓ рдЪреБрдХреЗ рд╣реИрдВ) - рдЦреЛрдЬ рдЕрдм рд╕реАрдзреЗ рд╢рд╛рдорд┐рд▓ / рд╕рдорд╛рд╡реЗрд╢реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдкрд░ рдЖрдпреЛрдЬрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред рдпрд╣ рдПрдХ рд╕рдордп рд╕реАрдорд╛ рд╣реИ рдЬреЛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рддрд╛рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рд▓рдХреНрд╖реНрдпреЛрдВ рд╕реЗ рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рдкрд╛рддреНрд░реЛрдВ рдХреЛ рднреНрд░рдорд┐рдд рди рдХрд░реЗрдВред

рд╢реАрд░реНрд╖ рд▓реЗрдЦ / рд╕реНрд░реЛрдд рдкрд░ рдЬрд╛рдПрдВ


рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг


CLion рдореЗрдВ рдХреЛрдб рдПрдирд╛рд▓рд╛рдЗрдЬрд░ рдореЗрдВ рдПрдХ рдирдИ рдЬрд╛рдБрдЪ рд╕рд╛рдордиреЗ рдЖрдИ рд╣реИред рдпрд╣ рдЙрди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛ рдкрдХрдбрд╝рддрд╛ рд╣реИ рдЬрдм рд╡рд░реНрдЪреБрдЕрд▓ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдпрд╛ рдбрд┐рд╕реНрдЯреНрд░рдХреНрдЯрд░реНрд╕ рд╕реЗ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдмреБрд░рд╛ рдХреНрдпреЛрдВ рд╣реИ, рдЗрд╕ рдкрд░ рдкрд╣рд▓реЗ рд╣реА рдмрд╣реБрдд рдЪрд░реНрдЪрд╛ рд╣реЛ рдЪреБрдХреА рд╣реИред рдЕрдм CLion рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреА рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реИ:

рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг: рдлреИрд╢рди


рд╡рд░реНрддрдиреА рдкрд░реАрдХреНрд╖рдХ рдПрдХ рдПрдХреАрдХреГрдд рд╡рд┐рдХрд╛рд╕ рдкрд░реНрдпрд╛рд╡рд░рдг рдХрд╛ рдПрдХ рдЕрднрд┐рдиреНрди рдЕрдВрдЧ рд╣реИред рд╣рдо рд╕рднреА рд╡рд░реНрддрдиреА рдХреА рдЧрд▓рддрд┐рдпрд╛рдБ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╣рдорд╛рд░реЗ рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдФрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рдирд╛ рдХрдард┐рди рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ рдЬрдм рдЖрдИрдбреАрдИ рдРрд╕реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ, рд╣рдордиреЗ CMake рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ Doxygen format рдкреНрд░рд▓реЗрдЦрди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╡рд░реНрддрдиреА рдЬрд╛рдБрдЪ рд╢рд╛рдорд┐рд▓ рдХреА рд╣реИ:

Doxygen рд╡рд░реНрддрдиреА рдЬрд╛рдВрдЪ


рд╡рд░реНрддрдиреА рдХреА рдХрдо рдЧрд▓рддрд┐рдпрд╛рдБ - рдЕрдзрд┐рдХ рдкрдардиреАрдп рдХреЛрдб!

C ++ 20 рд╕реЗ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ


рд╣рдорд╛рд░реА рдЯреАрдо Clangd- рдЖрдзрд╛рд░рд┐рдд рднрд╛рд╖рд╛ рдЗрдВрдЬрди рдореЗрдВ рдмрд╣реБрдд рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реА рд╣реИред рдФрд░ рд╡реИрд╢реНрд╡рд┐рдХ C ++ рд╕рдореБрджрд╛рдп рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ Clang рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ, рд╣рдо рд╕реЗрдирд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рдЧрдП - рд╣рдордиреЗ C ++ 20 рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдХреНрд▓реИрдВрдЧ рдХреА рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд╢рд╛рдЦрд╛ рд▓реА, рдЬрд┐рд╕реЗ Saar Raz рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рд╣рдорд╛рд░реА Clangd рд╢рд╛рдЦрд╛ рдореЗрдВ рдбрд╛рд▓рд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдореЗрдВ рдХреНрд▓рд┐рдпреЛрди рдореЗрдВ рдХреНрд▓реИрдВрдЧ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдФрд░ рдмреБрдирд┐рдпрд╛рджреА рдЬрд╛рдВрдЪ рдХреЗ рд╕рд╛рде рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ рдХреЛрдб рдорд┐рд▓рд╛:

рдЬрд╛рдБрдЪ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ


рд▓реЗрдХрд┐рди рд╣рдо рд╡рд╣рд╛рдВ рдирд╣реАрдВ рд░реБрдХреЗред рдФрд░ рд╣рдорд╛рд░реЗ рдХреНрд▓реИрдВрдЧрдб-рдЖрдзрд╛рд░рд┐рдд рдЗрдВрдЬрди рдореЗрдВ, рд╣рдордиреЗ рдСрдЯреЛ-рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рдорд╛рдорд▓реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛, рдПрдХ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ, рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд░реАрдиреЗрдо рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░рд┐рдВрдЧ, рдиреЗрд╡рд┐рдЧреЗрд╢рди рдФрд░ рд╕рд░реНрдЪ рдПрдХреНрд╢рди рдЧреЛ рдЯреВ рдбреЗрдлрд┐рдирд┐рд╢рди рдПрдВрдб рдлрд╛рдЗрдВрдб рдпреВрдЬреЗрдЬ ред

рд╕реНрд╡рдд: рдкреВрд░реНрдгрддрд╛ рдХреЗ рд▓рд┐рдП рдЯреЗрдВрдкреНрд▓реЗрдЯ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛ рдкреНрд░рддрд┐рдмрдВрдз рдХреЗ рдЕрдзреАрди рд╣реИрдВ:

рд╕рдорд╛рдкрди рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ


std::is_same<Other, T> рдФрд░ same_as<T, U> : рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдГ рдкреВрд░реНрдгрддрд╛:

рд╕рдорд╛рдкрди рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдЖрдк рдЕрдВрдЧреНрд░реЗрдЬреА рднрд╛рд╖рд╛ рдХреЗ рдмреНрд▓реЙрдЧ рдореЗрдВ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдкрд░ рд╣рдорд╛рд░реЗ рд╕рдВрдпреБрдХреНрдд рдХрд╛рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред CppCon 2019 рд╕реЗ рд░рд┐рдкреЛрд░реНрдЯ рдХреА рдПрдХ рд╡реАрдбрд┐рдпреЛ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рднреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ Saar Raz рдиреЗ рдХреНрд▓реИрдВрдЧ рдореЗрдВ рдЕрдкрдирд╛ рдХреЙрдиреНрд╕реЗрдкреНрдЯ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдФрд░ CLion рдореЗрдВ рдХреЙрдиреНрд╕реЗрдкреНрдЯ рд╕рдкреЛрд░реНрдЯ рдкрд░ рд╣рдорд╛рд░рд╛ рд╕рдВрдпреБрдХреНрдд рдХрд╛рдо рдХрд┐рдпрд╛ред

рдХреЛрдб рдХрд╡рд░реЗрдЬ рдореЗрдЯреНрд░рд┐рдХреНрд╕


рдХреЛрдб рдХрд╡рд░реЗрдЬ рдПрдХ рдРрд╕рд╛ рдЕрд╡рд╕рд░ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП CLion рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдкреВрдЫ рд░рд╣реЗ рд╣реИрдВред рдЕрдВрддрд┐рдо рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ, AppCode рдЯреАрдо рдиреЗ рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдХрд╛рдо рд╢реБрд░реВ рдХрд┐рдпрд╛, рдФрд░ рдЗрд╕рдореЗрдВ рд╣рдордиреЗ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо C ++ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╣реА рдХреНрд▓реЗрдпрди рдореЗрдВ рдЗрд╕реЗ рдЙрдард╛рдпрд╛ рдерд╛ред

CLion рдХреЛрдб рдХрд╡рд░реЗрдЬ рдореИрдЯреНрд░рд┐рдХреНрд╕ llvm-cov / gcov рдЯреВрд▓ рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдк рджреЛрдиреЛрдВ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдФрд░ рдирд┐рдпрдорд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдХреЛрдб рдХреА рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдХреА рдЬрд╛рдПрдЧреАред рдХрдИ рд▓реЙрдиреНрдЪ рдХреЗ рдкрд░рд┐рдгрд╛рдо, рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реЛ, рддреЛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рдореЗрдВ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЖрдк рд╕реАрдзреЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдХрд╡рд░реЗрдЬ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:

рдХреЛрдб рдХрд╡рд░реЗрдЬ


... рдпрд╛ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдмрд╛рдПрдВ рдЧрдЯрд░ рдореЗрдВред

рдЦреИрд░, рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд: рдЗрд╕ рдХрд╛рдо рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдХрд▓рди рд╡рд┐рдХрд▓реНрдк рдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

  • GCC рдХреЗ рд▓рд┐рдП: -fprofile-arcs -ftest-coverage рдпрд╛ -fprofile-arcs -ftest-coverage ред
  • -fprofile-instr-generate -fcoverage-mapping рд▓рд┐рдП: рдпрд╛ рддреЛ рдЬреАрд╕реАрд╕реА рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рдЭрдВрдбреЗ, рдпрд╛ -fprofile-instr-generate -fcoverage-mapping ред рдЕрдВрддрд░ рдХреЗрд╡рд▓ рдХрд╡рд░реЗрдЬ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рдЕрд╕реЗрдВрдмрд▓ рдХрд░рдиреЗ рдХреА рд╡рд┐рдзрд┐ рдореЗрдВ рд╣реЛрдЧрд╛ред

рдХреНтАНрдпреЛрдВ CLion рдЦреБрдж рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдкрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ? рдЬреНрдпрд╛рджрд╛рддрд░ рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рдВрдХрд▓рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдирд╣реАрдВ рдХрд░рдиреЗ рдХрд╛ рдирд┐рдпрдо рд╣реИред рд╣рд╛рдВ, рдФрд░ рдпрд╣ рд╣рдореЗрд╢рд╛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕реАрдПрдордХреЗ рдирд╣реАрдВ рд╣реЛрдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдХрд╣рд╛рдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рд▓реЗрдХрд┐рди рдЕрдм рд╣рдо рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣реЗ рд╣реИрдВ (рд╣рдореЗрдВ рд╕реИрдирд┐рдЯрд╛рдЗрдЬрд╝рд░ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рд╣реИ)ред

рдЖрдк рд╕рдВрдХрд▓рди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рд╣рдорд╛рд░реА рдСрдирд▓рд╛рдЗрди рдорджрдж рдореЗрдВ CLion рдореЗрдВ рдореАрдЯреНрд░рд┐рдХ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдиреНрдп рд╕реБрдзрд╛рд░


рдЗрд╕ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдЕрдиреНрдп рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕реБрдзрд╛рд░реЛрдВ рдореЗрдВ:

  • WSL2 рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред рд╕реАрдПрд▓рдЖрдИрдПрди рдореЗрдВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдбрдмреНрд▓реНрдпреВрдПрд╕рдПрд▓ рдХреЗ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рдорд╛рди рд╣реИрдВред
  • Microsoft рд╕реЗ рдирд┐рдпрдореЛрдВ рдХрд╛ рдкреНрд░рд╛рд░реВрдкрдг рдФрд░ рдирд╛рдордХрд░рдг рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдердиред рдпрд╣ рд╢реИрд▓реА Google, LLVM, Qt, GNU, рд╕реНрдЯреНрд░реЙрд╕реНрдЯреНрд░реБрдк рдФрд░ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рд╕реЗрдЯрд┐рдВрдЧреНрд╕ / рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИред рд╕рдВрдкрд╛рджрдХ | рдХреЛрдб рд╢реИрд▓реА | рд╕реА / рд╕реА ++ред
  • IntelliJ Rust Plugin Updates (рд╣рдорд╛рд░реЗ рдЕрдВрдЧреНрд░реЗрдЬреА рднрд╛рд╖рд╛ рдХреЗ рдмреНрд▓реЙрдЧ рдкрд░ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдкреЛрд╕реНрдЯ рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИ)ред
  • VCS рд╕рдорд░реНрдерди рдЕрдкрдбреЗрдЯ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдФрд░ IntelliJ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕реЗ рдЕрдиреНрдп рдкрд░рд┐рд╡рд░реНрддрдиред

рдбреЗрдореЛ


рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ, CLion 2019.3 рдХреА рдирдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкрд╛рд░рдВрдкрд░рд┐рдХ рд╡реАрдбрд┐рдпреЛ (рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ):



рдЕрдВрдд рддрдХ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкреНрд░рд╢реНрди, рдЗрдЪреНрдЫрд╛рдПрдВ, рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдФрд░ рд╕рд┐рд░реНрдл рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ - рд╣рдо рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЙрдирдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ! рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, рд╣рдореЗрдВ рдЖрдкрдХреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдФрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

рдЖрдкрдХреА JetBrains CLion рдЯреАрдо
рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреНрд░рд╛рдЗрд╡

Source: https://habr.com/ru/post/hi479318/


All Articles