Ho una struttura di classe comePerché il costruttore base() non è necessario?
abstract class Animal {
public Animal(){
//init stuff..
}
}
class Cat : Animal {
public Cat(bool is_keyboard) : base() //NOTE here
{
//other init stuff
}
}
Ora poi, guardare la linea notato. Se rimuovi : base()
, verrà compilato senza errori.
Perché è questo? C'è un modo per disabilitare questo comportamento?
fredda, si impara qualcosa di tutti i giorni ... Ho sempre esplicitamente messo di base(), probabilmente continuerà a farlo, perché il numero di sviluppatori rendo conto che ci è una chiamata implicita ad esso? – slugster
Inoltre, ho trovato l'articolo elegante di Skeet che mi ha detto tutto su questo: http://www.yoda.arachsys.com/csharp/constructors.html – Earlz
@slugster, non me ne sono reso conto ... quindi sì. – Earlz