Solution de contournement pour erreur C2536: impossible de spécifier explicite de l'initialiseur de tableaux dans Visual Studio 2013

le code suivant ne compile pas avec Visual Studio 2013 alors qu'il devrait:

class A
{
    A() :m_array{ 0, 1, 2 } {} //error C2536: 'A::A::m_array' : cannot specify explicit initializer for arrays
private:
    int m_array[3];
};

Voir rapport de bug pour plus de détails.

Quelles sont les solutions possibles?

Ne initialisation au moment de la déclaration de travaux? int m_array[3]{1,2,3};?
Ne std::array travail? (Vous aurez besoin de plus de croisillons, à moins que le compilateur a sauté le pistolet sur le C++14).
même erreur avec VC++ 2013.
Déclarer tableau comme std::array<int, 3> m_array; et l'initialiser comme A() :m_array ({ 0, 1, 2 }) {}. Ça fonctionne ou pas?
L'OP demande pour des solutions de contournement pour ce problème.

OriginalL'auteur Korchkidu | 2013-11-09