chaîne de caractères.Vide vs null.Lequel utilisez-vous?

Récemment, un collègue de travail m'a dit de ne pas utiliser string.Empty lorsque le paramètre est une variable de type string, mais l'utilisation null comme il pollue la pile?

Il dit de ne pas faire

string myString=string.Empty; mais ne string mystring=null;

Est-il vraiment important? Je sais string est un objet de sorte qu'il sorte de sens.

Je sais, c'est une question stupide, mais qu'est-ce que votre point de vue?

  • Je ne suis pas entièrement sûr de savoir pourquoi vous souhaitez faire non plus... pouvez-vous donner un peu plus de code que vous étaient en train de discuter comme un exemple?
  • il n'y a pas de code.J'ai demandé à mon collègue de regarder quelque chose que j'ai été le débogage et il a dit que, en règle générale "ne pas utiliser de chaîne.vide" set null comme il va sur la pile.Personnellement j'ai toujours utilisé de la chaîne.Vide comme l'époque de sa sortie devait être la bonne chose à utiliser plutôt que de "".
  • Voir aussi: En C#, dois-je utiliser des chaînes de caractères.Vide ou Chaîne.Vide ou "" ?
  • Ce que je veux dire, c'est... string.Empty, "", et null sont toutes des valeurs constantes, mais ils sont tous "simple" que je ne vois pas pourquoi vous vous souhaitez affecter à une variable. Si vous avez besoin de capturer une out variable, pourquoi ne pas simplement utiliser string myString;?
  • Ces jours-ci, les arguments sur des sujets tels que ce qui ne sont pas axés sur la lisibilité et de la sémantique et de se concentrer sur l'absurde micro-optimisations sont, au mieux, faible. Utilisation selon l'une signifie la bonne chose pour votre contexte donné. (par exemple, Si vous connaissez quelqu'un n'a pas un prénom, vous utilisez String.Empty; si vous ne savez pas si oui ou non quelqu'un a un moyen nom que vous utilisez null). Ensuite, une fois que vous avez le bon sens, d'écrire le code d'une manière qui est clairement correct et facile d'entretien.
InformationsquelleAutor user712923 | 2011-07-14