Quelle fonction delphi affirme qu'un objet n'est pas nul?Raccourci non nul en Delphi
Répondre
Comme knight_killer a souligné ci-dessus, vous utilisez la fonction Assert()
, affirmant que Assigned(obj)
est true
. Bien sûr, comme dans la plupart des langages compilés, les assertions sont exécutées (ou même incluses dans la sortie du compilateur) à moins que vous ne les ayez spécifiquement activées, donc vous ne devriez pas compter sur les assertions pour les versions en mode release.
Vous pouvez, bien sûr, simplement vérifier par rapport à nil
, un Assert(obj <> nil)
. Cependant, Assigned()
produit exactement la même sortie du compilateur et a l'avantage supplémentaire de fonctionner sur les pointeurs vers les méthodes de classe (qui sont en réalité une paire de pointeurs, un à la méthode, et l'autre à l'instance de classe). Assigned()
est une bonne habitude à ramasser.
Vous ne savez pas ce que vous voulez dire, mais Assert(Assigned(MyObject));
est assez court et facile à utiliser.
si elle est assignée (MyObject) puis ...
Affecté (AObject) vous indiquera si un objet est nul ou non.
Peut-être vaut la peine de mentionner le fait que si vous libérez un objet en utilisant AObject.Free, l'assigné retournera toujours vrai. Donc, assurez-vous de libérer l'objet en utilisant FreeAndNil (AObject).
- 1. Composant Delphi non peint
- 2. Delphi: Non VarIsBoolean() -fonction?
- 3. Lire le fichier texte avec l'octet nul nul
- 4. Delphi: Comment arrêter automatiquement les touches de raccourci TAction?
- 5. Delphi - Class TListView non trouvé
- 6. Delphi: Package requis non trouvé
- 7. Qu'est-ce qu'un équivalent sécurisé d'effacement de STL non-nul?
- 8. Comment ajouter non nul dans le champ de la table
- 9. caractères NUL de Marshal.Copy en C#
- 10. modèle d'objet nul en Objective-C
- 11. TTURLResponse est nul
- 12. Numéro littéral nul
- 13. ReSharper - Attribution nul problème
- 14. Zend_Db: L'adaptateur est soudainement nul!
- 15. Problème d'objet nul
- 16. Groovy rootLoader est nul
- 17. Comment supprimer raccourci StartMenu en utilisant C#
- 18. Création d'un raccourci en utilisant .Net
- 19. chaînes de raccourci PHP
- 20. Delphi - URI d'espace de noms non valide dans IXMLNode
- 21. Delphi: XML non valide passe par la validation MSXML
- 22. comment remplacer le caractère nul
- 23. Migrer vers Delphi 2009 - erreur non valide Typecast
- 24. Javascript: est nul ou pas un objet
- 25. DataContext du contrôle utilisateur WPF est nul
- 26. Comment déclarer un TField comme nul?
- 27. Comment créer un bouton non-rectangulaire avec Delphi?
- 28. Exécuter l'action pour le bouton non coché automatiquement dans Delphi
- 29. Génération de la clé primaire avec un index non nul (flux de données SSIS)
- 30. Tester si un certain type d'élément non nul existe ... quelque part
En fait, dans Delphi, les assertions sont activées par défaut et doivent être spécifiquement désactivées. –