title: Linux C: Reference to non-static member function must be called
body: <p>I receive <code>error:Reference to non-static member function must be called</code> trying to build the following code:</p>
  
  <pre><code>HTTPClient::HTTPClient(int id,HttpListener&amp; message) {
      pthread_t thId;
      pthread_create(&amp;thId, NULL, processor, this);  &lt;--error is here
  }
  
  void* HTTPClient::processor(void* userData) {
      HTTPClient* client = static_cast&lt;HTTPClient*&gt;(userData);
      client-&gt;run();
  }
  
  void HTTPClient::run() {
      while(true) {
          pthread_mutex_lock(&amp;mMutex);
          pthread_cond_wait(&amp;mCond,&amp;mMutex);
          httpLoadFile(mUrl, mPath);
          pthread_mutex_unlock(&amp;mMutex);
      }
  }
  </code></pre>
  
  <p>I have found some methods trying to solve the error, but failed!</p>