No, i membri della classe Debug
(con l'attributo ConditionalAttribute
) non emettono IL. C'è no explicit mention on MSDN, tuttavia i seguenti due citazioni implicano il comportamento abbastanza bene, in modo di aumentare la risposta di Roy:
Se si utilizzano i metodi della classe Debug per stampare le informazioni di debug e controllare la logica con asserzioni, si può fare il codice più robusto senza influire sulle prestazioni e sulla dimensione del codice del prodotto di spedizione .
Quindi, nessuna differenza di dimensioni implica alcuna uscita da queste qualunque e
L'attributo ConditionalAttribute viene applicato ai metodi di debug. I compilatori che supportano ConditionalAttribute ignorano le chiamate a questi metodi a meno che "DEBUG" non sia definito come un simbolo di compilazione condizionale. Fare riferimento alla documentazione di un compilatore per determinare se è supportato ConditionalAttribute e la sintassi per la definizione di un simbolo di compilazione condizionale .
Il che significa che, a livello di compilatore, saranno nemmeno prese in considerazione queste chiamate
fonte
2012-04-03 15:10:54
controllare il mio [blog vecchio] (http (quando
DEBUG
non è definito.): //tjoe.wordpress .com/2007/12/03/cotw-condizionaleattributo-classe /), tenendo presente che i metodi 'Debug' sono decorati con' [Conditional ("DEBUG")] '. – CodeNaked