C++C++17Code SnippetLanguage FeatureLearn C++

Tutorial: Easily Learn To Use optional In Modern C++ On Windows

young lady typing on keyboard of laptop in living room

Optional definition (std::optional) manages an optional contained value, i.e. a value that may or may not be present. This class template comes with C++17 standard, it is used with CLANG and other C++ compilers which has this standard. A common use case for optional is the return value of a function that may fail. Any instance of optional<T> at any given point in time either contains a value or does not contain a value. If an optional<T> contains a value, the value is guaranteed to be allocated as part of the optional object footprint, i.e. no dynamic memory allocation ever takes place. Thus, an optional object models an object, not a pointer, even though operator*() and operator->() are defined.

C++ Builder supports C++17 standards with its CLANG compiler and Bcc Compiler. Optional can be used to define any type of variables as below;

An optional variable can be checked by has_value() method if it has a value or not.

Value optional variable can be obtained by value() property and or value_or(0) method that returns 0 if no value. This C++ Builder VCL Windows application example below explains all;

Related posts
C++C++11C++14C++17Learn C++

Quickly Learn To Use Quick Sort Algorithm In C++ On Windows

C++Language FeatureLearn C++

Easily Learn To Use The Clipboard In Modern C++ On Windows

C++C++11C++14C++17Language FeatureLearn C++

Learn To Create Alpha Color Bitmap From A Bitmap By A Given Color In Modern C++

C++Learn C++Videos

Learn C++ With Effective Remote C++ Development with Codespaces by Nick Uhlenhuth (CPPCon 2020) Video

Worth reading...
Introduction To C++ Windows Development With C++Builder