Getting Started with C++ - Michael Price - CppCon 2023

Discover the essentials of getting started with C++: build systems, libraries, and tools. Learn C++ setup and editor extensions.

Key takeaways
  • C++ is a complex language that requires careful consideration of dependencies and build systems.
  • Ninja is a relatively new build system that focuses on speed and simplicity.
  • There are many libraries and frameworks available for C++ development, including Boost, Conan, and vcpkg.
  • Getting started with C++ requires a combination of reliable dependencies, build systems, and libraries.
  • It’s important to build locally and use tools like CMake, Makefiles, and Ninja to automate the build process.
  • Source control and continuous integration are essential for managing complex projects and ensuring quality.
  • Language-agnostic tools like plugins and extensions can be used to extend the functionality of the editor.
  • Visual Studio, Visual Studio Code, and other popular editors can be used for C++ development.
  • The speed of development depends on the tools and libraries used, and Ninja can greatly improve build times.
  • It’s important to properly configure the build system and to use a combination of static and dynamic analysis to detect issues.
  • GIT is essential for managing code changes and code management.
  • The use of package managers can greatly simplify the process of managing dependencies.
  • It’s important to learn about the build process and manage dependencies effectively.
  • A modern beginner-friendly C++ environment can be set up using vcpkg and Conan.
  • CMake is a key tool for C++ development, allowing users to automate the build process.