![]() |
VOOZH | about |
C++20 has undergone several upgrades that aim to streamline and enhance the code. Among these improvements lies a remarkable modification that simplifies the initialization process of aggregates, such as arrays, structs, and classes lacking user-declared constructors. In C++20, you can use aggregate initialization to instantly initialize an aggregate type by enclosing its components in braces. This addition to the language omits the need for convoluted syntax while also minimizing the chance of mistakes.
Aggregate initialization in earlier versions of C++ was only applicable in elementary instances, such as populating arrays or structs using a value sequence. Nevertheless, the latest version of C++ has extended this feature, enabling intricate aggregate initialization including setting up non-static data members of a class.
Syntax:
Type object_name{value1, value2, ..., valueN};Example 1:
Name: John Age: 33 Address: New York
Example 2:
Year: 2023 Month: 4 Day: 29
The advantages of using aggregate initialization are mentioned below: