title: Send new type as parameter
body: <p>The following method aimed at converting a pointer to a variable back to the original type.   </p>
  
  <p>The method should get 2 parameters: pointer to variable and its type.  </p>
  
  <pre><code>void myMethod(void *pointer, ? myType)
  { 
      //convert the pointer to its original type
      myType p = *((myType*) pointer);
  }  
  </code></pre>
  
  <p>usage:</p>
  
  <pre><code>int i = 3;
  void *pointerToI = &amp;i;
  
  //The type to send to method
  typedef decltype(i) myType;
  myMethod(pointerToI, ? myType);
  </code></pre>
  
  <p>How should I declare the type of the second parameter? </p>
  
  <p>N.B. The method is virtual.</p>