C++C++11C++14C++17C++20IteratorsLearn C++Templates

What Is Atomic (std::atomic) In Modern C++?

In modern C++, the concurrency support library is designed to solve problems in multi-thread operations. This library includes built-in support forthreads (std::thread), atomic operations (std::atomic), mutual exclusion (std::mutex), condition variables (std::condition_variable),and many other features of a modern C++ compiler. In this post, we explain what is std::atomic and how we…
Read more
C++C++11C++14C++17C++20Learn C++SyntaxTemplates

What Is An Implicitly-defined Move Constructor in Modern C++?

The Move Constructor is one of the great features of Object Oriented Programming in C++, such as other features like; copy assignment operator constructors, copy constructors, move assignment operators, destructors, etc. Since the C++11 standards, inmodern development,the move constructor allows you to move the resources from one object to another object without copying them. One of…
Read more
C++C++11C++14C++17Learn C++SyntaxTemplates

Learn About Extern Templates In Modern C++

The template feature in C++ is one of the great capabilities of modern C++. A template is a simple and very powerful statement in C++ that defines the operations of a class or function. In this article, we will show how extern templates can be used in a modern C++ app based on recent C++ standards.  First of all, let’s remind ourselves of what templates are in C++. What is a…
Read more
C++C++11C++14C++17Learn C++Templates

Learn What Is A Parameter Pack In C++

One of the great features of modern C++ is the ability to define templates. A template is a simple and very powerful statement in C++ that defines the operations of a class or function. In this article, we will explain what we mean by parameter pack in C++. You can download C++ here and use a professional C++ IDE and compiler to try things out for yourself.  What is parameter pack in…
Read more