Erreur : demande de membre dans un type non-classe 'Type non-classe'
Lors de la déclaration d'objets en C, il est crucial d'utiliser le syntaxe correcte pour les deux constructeurs. Dans le code fourni, une tentative de création d'un objet à l'aide du constructeur sans argument entraîne une erreur :
Foo foo2();
Cette syntaxe est incorrecte car elle ressemble à une déclaration de fonction, ce qui amène le compilateur à l'interpréter comme telle. . La syntaxe correcte pour la déclaration d'objet à l'aide du constructeur sans argument est :
Foo foo2;
En supprimant les parenthèses, le compilateur reconnaîtra correctement foo2 comme un objet de la classe Foo.
Alternativement, si vous souhaitez utiliser des parenthèses pour plus de clarté, assurez-vous que les arguments du constructeur sont inclus :
Foo foo2(1); // Explicitly pass the default argument of 1 to the no-argument constructor
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!