title: Initializing Variables in ARC mode
body: <p>I have started converting my projects to work under ARC and I was wondering how the following would behave. </p>
  
  <p>As I understand the following line would cause a memory leak under the manual memory management rules. </p>
  
  <pre><code>self.array = [[NSArray alloc] init];
  </code></pre>
  
  <p>and it is recommended to use an autorelease object such as ,</p>
  
  <pre><code>  self.array = [NSArray array] or
    array = [[NSArray alloc] init]; 
  </code></pre>
  
  <ol>
  <li><p>Therefore, does the ARC mode cause a memory leak from the following line as well? </p>
  
  <p><code>self.array = [[NSArray alloc] init];</code></p></li>
  <li><p>When we are directly assigning to the array(?) as follows without using the generated setter could this cause premature release of the array ?</p>
  
  <p><code>array = [[NSArray alloc] init];</code></p></li>
  </ol>
  
  <p>Please consider array as an instance variable. </p>