title: Why is there a possibility that UITableViewCells can be nil within a row?
body: <p>I'm currently learning the inner-workings of UITableView through a Ray Wunderlich book and noticed that in this protocal's function body it uses optional binding to create a cell.</p>
  
  <pre><code>override func tableView(tableView:  UITableView , didSelectRowAtIndexPath indexPath: NSIndexPath) {
    if let cell = tableView.cellForRowAtIndexPath(indexPath) {
      if cell.accessoryType == .None {
        cell. accessoryType = .Checkmark
      } else  {
        cell.accessoryType = .None
      }
    }
  
    tableView. deselectRowAtIndexPath (indexPath, animated: true )
  }
  </code></pre>
  
  <p>The concept of optional binding is still fairly new to me so thinking aloud I'm assuming that there's the possibility that there <strong>won't</strong> be a cell in every row (i.e. returns <code>nil</code>)</p>
  
  <p>Here's where I'm getting stuck. In my storyboard I have a table view controller and one prototype cell. Shouldn't the fact that I have this one prototype cell in the table view ensure that there will be created for however many rows are created?</p>