title: QMap::contains() not returning expected value
body: <p>I have a class that contains a QMap object:</p>
  
  <pre><code>QMap&lt;QString, Connection*&gt; users;
  </code></pre>
  
  <p>Now, in the following function Foo(), the if clause always returns false but when I iterate through the map, the compared QString, i.e., str1 is present in the keys. </p>
  
  <pre><code>void Foo(QString&amp; str1, QString&amp; str2)
  {    
      if(users.contains(str1))
          users[str1]-&gt;doStuff(str2);
      else
      {
          for(QMap&lt;QString, Connection&gt;::iterator iter = users.begin(); 
                             iter!= users.end();iter++)
              qDebug()&lt;&lt;iter.key();
      }
  }
  </code></pre>
  
  <p>Am I doing something wrong? Why doesn't contains() return true ?</p>