are there any plans in C++ standard to address inconsistency of initializer list constructors?
问题 initializer list constructors in C++ often cause trouble; for example using std::vector; using std::string; vector<string> v{3}; // vector of three empty strings vector<int> u{3}; // vector of one element with value 3 (Just to clarify, I mean <int> constructor is an initializer list constructor, while the <string> one is not .) The int case matches the initializer list constructor, while the string case doesn't. This is somewhat ugly, and often causes trouble. It was also noted in an early