Forums for “Fundamentals for C++ Professionals”

I answer many questions about modern C++ in my mentoring program, but I’m also sure that I left many questions open or created new ones. Use this forum to ask your questions. You will highly benefit from formulating your question and discussing the various aspects of its answer with the other course participants. I will regularly read and answer the questions if necessary.

Topics

abstract base class Adapter ADL aggregate array associative containers atomic atomic_flag auto awaitable borrowing Bridge C++ Core Guidelines call_once casts chrono compilation compile time Composite composition concepts condition_variable const consteval constexpr constexpr const consteval constexpr if constExpr member functions constructor copy coroutine coroutines covariant return type CRTP data race decay decltype Decorator Deducing This default arguments delete Dependency Injection dependent names deque designated initialization destructor dispatch table dll Duck Typing dynamic_cast enum exceptions Facade Factory Fidden Friend final friend function overloading hash header heap inheritance initialization inline issues istream is_constant_evaluated iterator_tags lambda lazy evaluation lookup lvalue reference member functions memory memory leak Mixins modules move multiple inheritance mutable mutex MVC namespace new NTTP nullObject once_flag ostream overload overloading ownership pass-by-reference Performance pimpl Pipes-and-Filters pointer Policy Protoype pure virtual RAII ranges raw string reference reference_wrapper reinterpret_cast requires rollback rule of thumb runtime rvalue reference scope SFINAE shared_ptr Singleton smart pointers stack State Pattern static static_assert std::cref std::lock std::make_pair std::make_tuple std::optional std::pair std::ref std::scoped_lock std::tie std::tuple steady_clock STL Strategy stream string structured binding swap switch synchronization system_clock Tag Dispatch Template Template Method templates template specialization template variable thread Thread Sanitizer time two-phase lookup Type Erasure type traits unique_lock unique_ptr unordered associative containers using vector views virtual virtual destructor Visitor