Я задал вопрос здесь, на SO об использовании указателя функции и кто-то ответил давая пример классического калькулятораКак работает указатель функции?
float Plus (float a, float b) { return a+b; }
float Minus (float a, float b) { return a-b; }
float Multiply(float a, float b) { return a*b; }
float Divide (float a, float b) { return a/b; }
in some way you select your operation
/* Here there should be an if or a switch/case that selects the right operation */
float (*ptrFunc)(float, float) = Plus;
Теперь здесь он говорит, что «здесь должен быть, если или переключатель/случай, выбирает правильную операцию «
И прочитал много раз указатель функции может использоваться для замены if или switch/case, но неспособный понять (даже в этом примере калькулятора), как может быть указатель функции, если или переключатель/регистр?
Может ли кто-нибудь мне помочь, как визуализировать замену указателя на функцию if или switch/case.
Можете ли вы ссылаться на другой вопрос? –
http://stackoverflow.com/questions/7281820/where-can-we-use-function-pointers-in-c-what-uses-for-function-pointers –
@CarlNorum вы можете сообщить мне, что это заявление float (* ptrFunc) (float, float) = Плюс; делаешь здесь? –