Erreurs, bugs, questions - page 2359
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Dans Visual Studio, mon exemple fonctionne également. Je parlais de l'opérateur de copie explicite et je l'ai expliqué par le code.
Je l'ai écrit juste au cas où, pour que si vous désactivez l'explicite, vous ne le désactiviez pas accidentellement en même temps.
Dans Visual Studio, mon exemple fonctionne également. Je parlais de l'opérateur de copie explicite et je l'ai expliqué par le code.
Je ne parlais pas de l'opérateur explicite, mais de l'inadmissibilité de l'opérateur implicite dans ce cas, que vous avez qualifié d'"étroitesse d'esprit", ce qui n'est pas le cas.
Si vous devez faire une copie, vous devez d'abord explicitement attribuer à b le type correct en C++. Car une telle copie constitue une violation de l'encapsulation des objets. C'est pourquoi il ne devrait pas être question d'implication.
Je voulais dire un opérateur de copie explicite et je l'ai expliqué en code.
Je doute que le compilateur les sépare (dans le contexte du code) en explicite et implicite. Sinon, il serait facile de le réparer
Au fait, le type d'opérateur semble correct.
Il cherche d'abord l'opérateur B: :, s'il est absent, puis il cherche l'opérateur A: :, s'il est absent là aussi, alors il considère que son devoir est accompli et ne fait rien (bien que le pointeur soit cassé en conséquence) :)
s'il n'est pas là non plus, alors il considère que son devoir est accompli et ne fait rien (bien que le pointeur soit éventuellement cassé) :)
Pourquoi ça ne fait rien ? Il copie par opérateur=(const A&) implicite (automatique), ce qu'il ne devrait pas faire.
Et enfin, supprimez cet astérisque après B, il vous fait mal aux yeux ;) Nous avons déjà tout compris avec ce bug.
Et enfin enlevez l'astérisque après B, ça fait mal à l'œil ;) Il a déjà tout compris avec ce bug.
Personnellement, je trouve les variables d'objet sans astérisque dérangeantes ;)) Un des bugs désagréables est d'écrire A a=new A au lieu de *a et de ne pas comprendre ce qui ne va pas pendant un long moment) J'ai, au contraire, montré que tout fonctionne correctement si on suit votre conseil et qu'on déclare un op.=& privé. Dans ce cas, l'éditeur produira immédiatement une erreur. Je le ferai de cette façon à partir de maintenant ;))
Les particularités sont doubles, mais pas telles que si l'on change l'ordre d'addition (sauf pour les nombres relativement très différents), le résultat est différent ! Expliquez à un idiot pourquoi cela se produit ici ?
Il suffit de regarder les deux dernières lignes de la source.
Erreur pour les développeurs.
Le script ne se compile pas, identifiez pourquoi))). Utilisez le fichier joint.
Même dossier :
Erreur pour les développeurs.
Le script ne se compile pas, identifiez pourquoi))). Utilisez le fichier joint.
Même dossier :
Toutes les compilations, supprimer la ligne d'erreur