title: How do I use a conversion constructor with pointers?
body: <p>I have a class <code>C</code> that can be converted to class <code>A</code> and a function that takes an <code>A*</code> as an argument. I want to call it with a <code>C*</code>, but I can't seem to get a conversion constructor to work. I get: <code>error: cannot convert ‘C*’ to ‘A*’ for argument ‘1’ to ‘void doSomething(A*)’</code>. What am I doing wrong?</p>
  
  <pre><code>class C {
  };
  
  class A {
  public:
      A(C* obj) {}
  };
  
  void doSomething(A* object);
  
  int main()
  {
      C* object = new C();
      doSomething(object);
  }
  </code></pre>