Вызывание переопределенной функции от переопределяющей функции

=QUERY({W25:X37}, "select sum(Col1) where Col2='"&N12&"' label sum(Col1)''")

22
задан Igor Oks 4 January 2010 в 07:44
поделиться

6 ответов

Это прекрасно. Фактически, канонический способ выполнения некоторых операций - это вызов метода базового класса, а затем выполнение любых действий (или наоборот). Я имею в виду operator = здесь. Конструкторы обычно работают таким же образом, даже если это немного замаскировано в списке инициализации.

20
ответ дан 29 November 2019 в 05:13
поделиться

Да, все в порядке, если вы не нарушаете принцип замены Лискова.

6
ответ дан 29 November 2019 в 05:13
поделиться

It's ok. Syntax you had gave can be also used to temporary turn off polymorphism, i.e. when you call obj->B::foo() method will be chosen from class B regardless if foo() is virtual or not and if obj is instance of B or not (it must be an instance of class extending B though).

1
ответ дан 29 November 2019 в 05:13
поделиться

Я видел, как фреймворки GUI использовали это, чтобы вернуться к реализации по умолчанию базового класса, которая содержала код для сигнализации об ошибках / выдачи исключения / возврата общего значения.

1
ответ дан 29 November 2019 в 05:13
поделиться

Да, это так.

4
ответ дан 29 November 2019 в 05:13
поделиться

Yes it is , that's what your compiler do for you every time it generates a constructor and a destructor: calling the mother's one for instance. I often rely on that"trick" in my own code.

0
ответ дан 29 November 2019 в 05:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: