Partage via


Avertissement du compilateur (niveau 3) C4534

'constructeur' ne sera pas un constructeur par défaut pour la classe 'class' en raison de l’argument par défaut

Une classe non managée peut avoir un constructeur avec des paramètres qui ont des valeurs par défaut et le compilateur l’utilisera comme constructeur par défaut. Une classe marquée avec le value mot clé n’utilise pas de constructeur avec des valeurs par défaut pour ses paramètres comme constructeur par défaut.

Pour plus d’informations, consultez Classes et structs.

L’exemple suivant génère l’erreur C4534 :

// C4534.cpp
// compile with: /W3 /clr /WX
value class MyClass {
public:
   int ii;
   MyClass(int i = 9) {   // C4534, will not be the default constructor
      i++;
   }
};

int main() {
   MyClass ^ xx = gcnew MyClass;
   xx->ii = 0;
}