Dlaczego domyślny konstruktor bez parametrów odchodzi po utworzeniu go z parametrami

W C #, C ++ i Java, podczas tworzenia konstruktora przyjmującego parametry, domyślny parametr bez parametrów znika. Zawsze akceptowałem ten fakt, ale teraz zacząłem się zastanawiać, dlaczego.

Jaki jest powód tego zachowania? Czy to tylko „miara bezpieczeństwa / zgadywanie” mówiąc „Jeśli stworzyłeś własnego konstruktora, typrawdopodobnie nie chcesz tego ukrytego ”? Czy może ma to jakiś techniczny powód, który uniemożliwia kompilatorowi dodanie jednego, gdy sam stworzyłeś konstruktora?

questionAnswers(11)

yourAnswerToTheQuestion