I thought that C++0x made it possible for vectors to be initialized with an initializer list, such as:

vector<vector<string> > vv {{"hello", "goodbye", ""}};
I tried this syntax in both VS 2010 & VS 2012 Express For Desktop, and I get the same error in both compilers:

compiler error: non-aggregates cannot be initialized with initializer list

To put the code above in context, I'm going to have a .txt file with hundreds of thousands of string arrays, in initializer list format, such as:

{"string","string","string","","",""},{"string","string","string","","",""},{"string","string","string","","",""}...and so on

The first 3 strings in each array will be non-zero in length, and the last 3 strings in each array will be empty, as shown above.

I want to be able to cut and paste the arrays right into the declaration, either with:

string arrayOfArrays[0][6] = {{"string","string","string","","",""},{"string","string","string","","",""},{"string","string","string","","",""}...and so on };


vector<vector<string> > vecOfVectors = {{"string","string","string","","",""},{"string","string","string","","",""},{"string","string","string","","",""}...and so on };

I know I can do the first, but apparently the second declaration method with vectors won't work. I would like to work with vectors, but I'm not sure about the initialization. The .txt file will be what it is, so the initialization will have to be able to work with its 'array-like initializer' format.