почему нужно брать g в скобки ()

Автор kol1978, 15 сентября 2024, 07:20:31

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

kol1978

почему нужно брать g в скобки ()?
Цитировать// pointer to functions
#include <iostream>
using namespace std;

int addition (int a, int b)
{ return (a+b); }

int subtraction (int a, int b)
{ return (a-b); }

int operation (int x, int y, int (*functocall)(int,int))  // "автоматическое" объявление *functocall указателем на addition и спользование его (этого указателя) как параметра при вызове функции operation для передачи её пераметров вызова в параметры вызова ddition...
{
    int g;
    g = (*functocall)(x,y);    // похоже что в этом месте вызывается ф. addition и переменной g присваивается возвращаемое ей значение
    return (g);                // почему нужно брать g в скобки () ?  если скобки убрать то компилятор ошибку не выдает... - это ф. возвращает возвращаемое значение другой функции - ну и что...
}

int main ()
{
    int m,n;
    int (*minus)(int,int) = subtraction;

    m = operation (7, 5, addition);       // как ф.  addition передаются параметры a и b ?
    n = operation (20, m, minus);
    cout <<n;                              // 20-(7+5)=8   - правильно
    return 0;
}