title: Is it possible to create a derived class from a base class constructor?
body: <p>I have say 3 classes, Animal, Cat &amp; Dog.</p>
  
  <pre><code>// calling code
  var x = new Animal("Rex"); // would like this to return a dog type
  var x = new Animal("Mittens"); // would like this to return a cat type
  
  if(x.GetType() == typeof(Dog))
  {
     x.Bark();
  }
  else
  {
    x.Meow();
  }
  
  
  class Animal
  {
     public Animal(string name)
     {
        // check against some list of dog names ... find rex
        // return Animal of type Dog.
  
        // if not...
  
        // check against some list of cat names ... find mittens
        // return Animal of type Cat.
     }
  }
  </code></pre>
  
  <p>Is this possible somehow? If not is there something similar I can do?</p>