← Zurück

Почему в примерах вызываются методы базового класса?

Почему в примерах вызываются методы базового класса? Ведь дочерний их всех наследует?

Например: // создаем заявку var order = base.CreateOrder(direction, base.Security.GetMarketPrice(direction), base.Volume);

        // регистрируем ее
        base.RegisterOrder(order);

Взято отсюда: http://stocksharp.com/doc/html/a8159c99-256b-46e4-80fe-7cf92944b4c9.htm

Если можно, прошу не пинать к мануалам, а хотя бы в 2 словах объяснить.

War dieses Thema hilfreich?

Thema teilen

Kommentare (3)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Alexander
Alexander

colupator: Почему в примерах вызываются методы базового класса? Ведь дочерний их всех наследует?

Например: // создаем заявку var order = base.CreateOrder(direction, base.Security.GetMarketPrice(direction), base.Volume);

        // регистрируем ее
        base.RegisterOrder(order);

Взято отсюда: http://stocksharp.com/doc/html/a8159c99-256b-46e4-80fe-7cf92944b4c9.htm

Если можно, прошу не пинать к мануалам, а хотя бы в 2 словах объяснить.

Потому что в этом классе не определены эти методы. Вообще "base." можно опускать, компилятор сам поймёт откуда вызывать метод. Т.е. в примерах написание base.RegisterOrder(order); и RegisterOrder(order);

означает одно и тоже, во втором случае метод RegisterOrder также вызывается из базового класса.

colupator
colupator
colupator Autor

Но ведь если я метод не переопределяю, то он и в наследнике тот же самый, верно? Например, CreateOrder и BaseOrder? Если я напишу this.CreateOrder, то действие будет то же самое?

И члены класса: например, base.Volume = this.Volume?

Alexander
Alexander

colupator: Но ведь если я метод не переопределяю, то он и в наследнике тот же самый, верно? Например, CreateOrder и BaseOrder? Если я напишу this.CreateOrder, то действие будет то же самое?

И члены класса: например, base.Volume = this.Volume?

да