Я работаю над кодом другого кода на С++, и я нашел странный вызов определенной функции func()
. Вот пример:
if(condition)
func();
else
(*this).func();
В чем разница между func()
и (*this).func()
?
В каких случаях вызов func()
и (*this).func()
будет выполнять другой код?
В моем случае func()
не является макросом. Это виртуальная функция в базовом классе с реализацией как в базовом, так и в производном классе и без бесплатного func()
. if
находится в методе базового класса.