Template deduction guides are patterns associated with a template class that tell the compiler how to translate a set of parameters (and their types) into template arguments.
template<typename T>
struct Foo
{
T t;
};
Foo (const char *) -> Foo<std::string>;
//var.t is a 'std::string
Foo var{"A String"};