Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais
Nous recommandons d’utiliser Visual Studio 2017

Erreur du compilateur C3897

'var' : seules les données membres static initonly peuvent avoir une expression d'initialiseur

Une donnée membre initonly ne peut être initialisée au niveau de la déclaration que si elle est également static.

L'exemple suivant génère l'erreur C3897 :

// C3897.cpp
// compile with: /clr /c
ref struct Y1 {
   initonly int data_var1 = 9;   // C3897

   initonly static int data_var2 = 9;   // OK

   initonly int data_var3;   // declare initonly instance
   Y1() { data_var3 = 99; }   // initialize initonly instance
};
Afficher: