2012-06-10 2 views
1

Я пытаюсь установить значение в объекте QPolygonF на определенное значение. Например:Значения параметров в QPolygonF

QPolygonF *polygonPoints; 
polygonPoints->resize(2); 
polygonPoints[1] = QPointF(5.0,5.0); 

Когда я пытаюсь скомпилировать я получаю ошибку, которая говорит, что нет найдено оператора, который принимает правый операнд типа «QPointF». QPolygon наследуется от QVector, поэтому я считаю, что это должно работать ... Вышеприведенный код работает, когда я использую «< <», но я хотел бы изменить определенные значения в полигоне, а не только добавлять значения. Благодарю.

+0

Можете ли вы включать полное сообщение об ошибке и исправить код (замените ' QPolygon' by 'QPolygonF' и' -> 'by' .'). – alexisdm

+0

Странно, когда я делаю qDebug << polygonPoints [0], он возвращает все содержимое массива в терминале вместо записи в индексе 0. – Justin

ответ

1
QPolygonF

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

(*polygonPoints)[1] = QPointF(5.0,5.0); 
+0

Вот оно. Вау. Скобки сделали разницу. Благодаря! – Justin

Смежные вопросы