I guess it's too much to ask for the compiler to figure this out. Here is what I mean. If I get an exception on a line in the try block, the only code I am executing is the code in the finally block. I am not going to execute the return, so why do I care if it has a valid value or not.
Later, curt ----- Original Message ----- From: "Jim Arnold" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Friday, April 19, 2002 10:32 AM Subject: Re: [DOTNET] Use of unassigned local variable > You can't initialise variables inside a try..catch block and then use them > outside of that block. Simply because not everything within try{} or > catch{} is guaranteed to be executed, so when you reach the other side of it > (your 'return author' line), that variable might not have been assigned. > Initialise it before the try{} block and you should be fine. > > Jim > > > -----Original Message----- > > From: Curtis Koppang [mailto:[EMAIL PROTECTED]] > > Sent: 19 April 2002 15:01 > > To: [EMAIL PROTECTED] > > Subject: [DOTNET] Use of unassigned local variable > > > > > > I get the "use of unassigned local variable 'author'" error on the > > following line of code... > > > > try > > { > > cn.Open(); > > dr = cmd.ExecuteReader(CommandBehavior.SequentialAccess); > > author = new Author(dr); > > } > > finally > > { > > cn.Close(); > > } > > > > return author; > > > > But not on the following code. > > > > cn.Open(); > > dr = cmd.ExecuteReader(CommandBehavior.SequentialAccess); > > author = new Author(dr); > > cn.Close(); > > > > return author; > > > > Why would the two be considered different? > > > > Tx, > > curt > > > > You can read messages from the DOTNET archive, unsubscribe > > from DOTNET, or > > subscribe to other DevelopMentor lists at http://discuss.develop.com. > > > > You can read messages from the DOTNET archive, unsubscribe from DOTNET, or > subscribe to other DevelopMentor lists at http://discuss.develop.com. > > You can read messages from the DOTNET archive, unsubscribe from DOTNET, or subscribe to other DevelopMentor lists at http://discuss.develop.com.