#c #arrays #vector
#c #массивы #вектор
Вопрос:
У меня есть 2 массива, называемых movePositionsX и movePositionY, вот так
int movePositionsX[5] = { 1080 , 720 , 160 , 240 , 640};
int movePositionsY[5] = { 720 , 360 , 520, 860 , 164};
У меня есть случайная возможность получить одну из случайных позиций в обоих массивах, и я хочу поместить их оба в 1 вектор2, как я могу это сделать?
Это вектор2
vector<int> combine;
У меня есть этот код до сих пор, но он выдает ошибку «нет соответствующего вызова функции для std::vector::insert (, intamp;, intamp;, float amp;)»
circleObjectArray[i].setPosition(Interpolate(circleObjectArray[i].getPosition(),combine.insert(combine.end,movePositionsX[rand() % 5], movePositionsY[rand() % 5], factor));
Это моя функция интерполяции
Vector2f Interpolate(
const Vector2f pointA,
const Vector2f pointB,
float factor
) {
if( factor > 1.f )
factor = 1.f;
else if( factor < 0.f )
factor = 0.f;
return pointA (pointB - pointA) * factor;
}
Как я могу объединить оба значения массивов в 1 vector2, чтобы использовать его в этой функции?
Спасибо за ваше время: D
Комментарии:
1. Что возвращает vector::insert()
2. Это не имеет ничего общего с SFML.
3. Похоже, у вас есть свой) в неправильном месте
4. @drescherjm о боже, как я это пропустил: ( я исправил это, и теперь он выдает эту ошибку ‘нет соответствующей функции для вызова std::vector<int>::insert (<тип неразрешенной перегруженной функции>, intamp;, intamp;)
5. @JesperJuhl извините, я собираюсь удалить тег и sfml из заголовка