Ho visto alcuni codice scritto da un altro sviluppatore che sembra qualcosa di simile:Una semplice istanziazione di classe fallirebbe mai in C#?
var stringBuilder = new StringBuilder();
if(stringBuilder == null)
{
// Log memory allocation error
// ...
return;
}
(E 'tutto il luogo nel codice)
Domanda 1: Vorrei che il codice di registrazione di errore anche ottenere chiamato ? Se non ci fosse memoria, un System.OutOfMemoryException
non verrebbe lanciato su quella prima riga?
Domanda 2: Una chiamata a un costruttore può mai restituire null?
Tecnicamente è possibile per le classi proxy e nullables, come Marc Gravell ha sottolineato, ma è un caso patologico che non è opportuno prendere in considerazione: http://stackoverflow.com/questions/194484/whats-the- stranissimo-angolo-caso-hai visto-in-c-o-net –