Erreurs, bugs, questions - page 2325
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
Y avait-il des raisons sérieuses d'abandonner l'opérateur -> ?
Non, il n'y avait pas de raisons sérieuses.
La seule justification de son absence est le souci des esprits immatures des utilisateurs non familiarisés avec le C++.
La double négation est-elle optimisée par le compilateur ?
Oui, c'est vrai.
Non, il n'y avait pas de raisons sérieuses.
La seule justification de son absence est de ménager les esprits fragiles des utilisateurs non familiarisés avec le C++.
Je ne pense pas que quelque chose de mauvais se produira si vous l'ajoutez.
Vous pouvez autoriser l'utilisation d'un point avec des pointeurs où il n'y a aucune ambiguïté pendant un certain temps.
Et, bien sûr, émettre un avertissement.
Je ne pense pas que quelque chose de mauvais se produira si vous l'ajoutez.
Pendantun certain temps , vous pouvez être autorisé à utiliser un point avec des pointeurs où il n'y a aucune ambiguïté.
Et, bien sûr, émettre un avertissement.
Pourquoi le rendre si compliqué ? C'est suffisant pour faire de . et -> des enregistrements équivalents, interchangeables.
Au sens figuré
#define -> .
Oui, il y a une ambiguïté dans votre cas. Dans le bon sens du terme, il devrait y avoir au moins un avertissement du compilateur pour ce genre de chose.
Dans mon cas, qui est beaucoup plus simple, tout est clair. Je pense que C++ est d'accord avec ça aussi.
Vous avez une clarté imaginaire - un petit changement (de classe A) et le sens change radicalement.
Il s'agit d'une modification de la classe qui devrait entraîner un message correspondant du compilateur.
S'il n'est pas là, c'est la clarté totale.
Comme solution temporaire, utilisez l'opérateur " !". (logique non).
Nous allons réfléchir à la solution (peut-on changer le comportement maintenant, alors qu'il y a beaucoup de code ?)
Il est possible que pour un pointeur, une opération de conversion bool soit une opération sur le pointeur et non sur l'objet vers lequel il pointe.
Sans changer les codes existants, ça ne marchera pas... Tout le concept de pointeurs en tant qu'objets dynamiques s'effondre.
Je veux dire, au lieu de juste écrire
nous devrons en écrire un qui prête à confusion.
if ( *a * *b );//(2)
Et tout ça pour quoi ? Pour qu'un pointeur puisse être vérifié pour NULL ? - Il existe un opérateur de comparaison pour cela :
Pourquoi le dupliquer ?
tout le concept de pointeurs en tant qu'objets dynamiques s'effondre.
il n'y a plus de concept maintenant, un objet et un pointeur vers lui sont mélangés dans une même pile
Cela permet de traiter les pointeurs comme des objets, ce qui dans certains cas donne une notation plus simple et plus claire sans *.
et de tels pointeurs peuvent également être utilisés comme références
Et maintenant, ils proposent de tout détruire et de retourner à l'âge de pierre pour le bien de personne ne sait quoi...