We dont want to provide magic predefine settings to the user. If the user code needs default contructor, then the derived class can have one.