.NET / C # - Ein Objekt mit der Anweisung 'using' deklarieren

8

Angenommen, ich habe eine Methode wie folgt:

%Vor%

Würde das immer noch das 'ms' Objekt haben? Ich habe Zweifel, vielleicht, weil etwas zurückgegeben wird, bevor der Anweisungsblock fertig ist.

Danke, AJ.

    
TheAJ 14.04.2010, 23:13
quelle

3 Antworten

11

Ja. using (x = e) { s } ist Zucker für { x = e; try { s } finally { x.Dispose(); } }

    
Simon Buchan 14.04.2010, 23:16
quelle
4

Ja, Verwenden erstellt einen try..finally Block , so dass es die ms (und sogar führt eine Nullprüfung durch, falls Sie ns auf null setzen).

    
Michael Stum 14.04.2010 23:15
quelle
4

Ja, die ganze Idee hinter der Using-Anweisung ist, dass sie automatisch den Stream / das Objekt, das Sie verwenden, entsorgt. schön gemacht.

    
RedEye 14.04.2010 23:19
quelle

Tags und Links