#include <iostream>
#include <initializer_list>
#include <vector>
#include <typeinfo>
#include <type_traits>
using namespace std;

int main() {
	std::cout << std::boolalpha;
	std::initializer_list<char*> v = {"one","two","three"}; // Takes string literal pointers (char*)
	auto var = v.begin();
	char *myvar;
	cout << (typeid(decltype(*var)) == typeid(decltype(myvar))); // true
	
	std::string ea = "hello";
	std::initializer_list<std::string> v2 = {"one","two","three"}; // Constructs 3 std::string objects
	auto var2 = v2.begin();
	cout << (typeid(decltype(*var2)) == typeid(decltype(ea)));
	std::vector<std::string> vec(v2);
	return 0;
}