#include <iostream>
#include <vector>
#include <typeinfo>
#include <typeindex>

template <typename... Types>
void Fill(std::vector<std::type_index>& vec)
{
    vec.insert(vec.end(), {typeid(Types)...});
}

int main()
{
    std::vector<std::type_index> vec;
    
	Fill<char, int, float>(vec);
	for (const auto& t : vec)
	{
		std::cout << t.name() << std::endl;
	}
}