日期:2014-05-20  浏览次数:20817 次

代码段中使用同名变量,这么做难道不会丢失句柄吗??
看下面代码:    
在构造器中,代码先后使用了btn变量来创建按钮,它这么做难道不会丢失对btn的句柄吗?    
书中的解释是:同时,因为我对两个按钮使用了两个不同的Click事件处理程序,所以也不需要将按钮对象作为字段存储。我使用同一个btn变量创建两个按钮。    
 
using     System;    
using     System.Drawing;    
using     System.Windows.Forms;    
 
class     TwoButtonsDock:     Form    
{    
                 
                  public     static     void     Main()    
                  {    
                                      Application.Run(new     TwoButtonsDock());    
                  }    
                  public     TwoButtonsDock()    
                  {    
                                      Text     =     "Two     Buttons     with     Dock ";    
                                      ResizeRedraw     =     true;    
 
                                      Button     btn     =     new     Button();    
                                      btn.Parent     =     this;    
                                      btn.Text             =     "&Larger ";    
                                      btn.Height     =     2     *     Font.Height;    
                                      btn.Dock             =     DockStyle.Fill;    
                                      btn.Click     +=     new     EventHandler(ButtonLargerOnClick);    
                                         
                                      btn     =     new     Button();    
                                      btn.Parent     =     this;