No código a seguir, como posso fazer com que a linha comentada funcione da mesma maneira que a linha acima dela?
Gostaria de torná-lo um código genérico, que chama o construtor adequado de um modelo Type
.
#include <string>
#include <iostream>
template <typename Type>
struct Class
{
Type data;
Class(Type data) : data(data) { }
};
int main()
{
Class<std::string> a = std::string("abc");
// Class<std::string> b = "abc";
std::cout << a.data << std::endl;
return 0;
}