Russian Qt Forum

Qt => Общие вопросы => Тема начата: Гурман от Март 22, 2015, 18:49



Название: Что это было???
Отправлено: Гурман от Март 22, 2015, 18:49
Код:
#define arrowSize   10.0;

буквально сразу за этим

    QPointF arrowP1 = line().p2() + QPointF( sin(angle + M_PI / 3.0) * arrowSize, // angle известен
                                             cos(angle + M_PI / 3.0) * arrowSize );

вываливается на этой строке простыня ошибок

*****.cpp:18: ошибка: expected primary-expression before '(' token
*****.cpp:18: ошибка: expected ')' before ';' token
*****.cpp:18: ошибка: expected primary-expression before ',' token
*****.cpp:19: ошибка: expected primary-expression before ')' token

arrowSize нигде больше не отыскивается (при замене на другое имя тоже самое), символы точно совпадают (скопированы)

заменяю влоб

Код:
    QPointF arrowP1 = line().p2() + QPointF( sin(angle + M_PI / 3.0) * 10.0, // angle известен
                                             cos(angle + M_PI / 3.0) * 10.0 );

компиляция проходит. Пробовал (10.0) в скобки брать - нифига, тоже самое. Оставил так
Код:
qreal arrowSize = 10.0;
    QPointF arrowP1 = line().p2() + QPointF( sin(angle + M_PI / 3.0) * arrowSize,
                                             cos(angle + M_PI / 3.0) * arrowSize );

Тоже компилируется нормально.

И чего это было такое с препроцессором ???


Название: Re: Что это было???
Отправлено: sergek от Март 22, 2015, 18:57
Точку с запятой уберите.


Название: Re: Что это было???
Отправлено: Гурман от Март 22, 2015, 19:04
ТФУ... нельзя работать в воскресенье.......  ;D