I was reading the C++0x faq and came across the section detailing initializer lists. The examples were mostly variations of:
vector vi = { 1, 2,
One is uniform initialization, and the other is initializer lists. They are two different things, although as you can see, they can produce similar syntax.
vector vk{2};
is a uniform initialization- the other two are initializer lists.