Моим первым предположением будет то, что <wx/wx.h>
имеет макрос с именем GetYValue
(и, возможно, другой с именем GetXValue
), который должен принимать некое комбинированное значение X / Y и "разворачивать" их в отдельные компоненты. , в общем порядке:
#define GetXValue(xy) ((xy)>>16)
#define GetYValue(xy) ((xy)&x0ff)
С этим расширением ваш код будет выглядеть примерно так:
double ((xy)>>16)(double x);
... в этот момент компилятор начинает шипеть - за исключением, конечно, того, что он, вероятно, прекратил синтаксический анализ раньше, чем это, так как double x
, кажется, пытается передать два токена в качестве параметров макросу, который только ожидает 1.
Редактировать: Я вижу, что угадал довольно близко, но неправильно угадал, что здесь за слово "Y" - другие, очевидно, будут GetCValue
, GetMValue
и т. Д. Вместо GetXValue
. Ну да ладно ...