lvalue требуется в качестве левого операнда присваивания (не «use ==») - PullRequest
0 голосов
/ 02 марта 2012

У меня проблема с операндом lvalue при попытке назначить указатель на функцию. Я не знаю, где именно проблема, но я дам вам весь код, связанный с этой конкретной проблемой.

    double *func(double); //initialization for a pointer to a function that both returns a double and requires a double

    func = &xsquaredsinx; //trying to make the pointer point at a function that both returns a double and requires a double
    func = &halfcircle;//others that are the same
    func = &testfunction;

Любая помощь была бы замечательной.

Ответы [ 2 ]

3 голосов
/ 02 марта 2012

Синтаксис для объявления func неверен; это объявление объявляет функцию, которая принимает double и возвращает double*. Правильный способ объявить func:

double (*func)(double);
0 голосов
/ 02 марта 2012

Я считаю, что ваше объявление double *func(double); не объявляет указатель на функцию, а просто объявляет функцию. Попробуйте вместо double (*func)(double);

Вот хороший урок: http://www.newty.de/fpt/fpt.html#assign

...