Zero-Initialize array member na lista de inicialização

Eu tenho uma classe com um membro da matriz que gostaria de inicializar para todos os zeros.

class X
{
private:
    int m_array[10];
};

Para uma variável local, existe uma maneira simples de inicializar com zero (consulteaqui):

int myArray[10] = {};

Além disso, o alunom_array claramente precisa ser inicializado, pois as ints de inicialização padrão deixarão lixo aleatório, conforme explicadoaqui.

No entanto, posso ver duas maneiras de fazer isso para uma matriz de membros:

Entre parênteses:

public:
    X()
    : m_array()
    {}

Com aparelho:

public:
    X()
    : m_array{}
    {}

Ambos estão corretos? Existe alguma diferença entre os dois no C ++ 11?

questionAnswers(2)

yourAnswerToTheQuestion