Selecting a type in compile-time
As we discussed in the preceding topic, type
is a basic part of a template. However, we can select a certain type based on the input from the user. Let's create a template that can decide what type should be used in the variable. The following types.cpp
code will show the implementation of the template:
/* types.cpp */ #include <iostream> using namespace std; // Defining a data type // in template template<typename T> struct datatype { using type = T; }; auto main() -> int { cout << "[types.cpp]" << endl; // Selecting a data type in compile time using t = typename datatype<int>::type; // Using the selected data type t myVar = 123; // Displaying the selected data type cout << "myVar = " << myVar; return 0; }
As we can see in the preceding code, we have a template named datatype
. This template can be used to...