g ++ advertencia al declarar multidimensional, doble matriz

En mi programa C ++, estoy tratando de inicializar una matriz 3 * 3 * 3 de tipo double con todos los 0. En el archivo de encabezado de clase, declaró un miembro

double list[3][3][3];

Cuando imprimí el contenido de esta matriz, descubrí que no todas las entradas son 0 como esperaba. p.ej. la lista [1] [1] [1] tiene el valor 4.03158e-321

Hence Inicialicé manualmente esta matriz a todos los 0 en el constructor:

list = {{{0,0,0},{0,0,0},{0,0,0}},
      {{0,0,0},{0,0,0},{0,0,0}},
      {{0,0,0},{0,0,0},{0,0,0}}};

Esto hace que mi programa funcione, sin embargo, recibí la advertencia del compilador:

warning: extended initializer lists only available with -std=c++0x or -std=gnu++0x

Mi pregunta es, por lo tanto,

¿Por qué la lista tiene entradas distintas de cero después de inicializarse en el encabezado? ¿Por qué recibo el mensaje de advertencia anterior y cómo deshacerme de él?

Mi compilador es g ++ (Ubuntu / Linaro 4.5.2-8ubuntu4) 4.5.2, con gcc versión 4.5.2 (Ubuntu / Linaro 4.5.2-8ubuntu4)

Respuestas a la pregunta(5)

Su respuesta a la pregunta