Как добавить массивы в качестве параметра для функции?
всем привет. у меня есть проблема с передачей массивов в качестве параметров функции. недавно я изучил векторы и попытался использовать векторы для решения этой проблемы, но это тоже не сработало.
ошибка находится в третьей строке от конца при вызове функции.
Что я уже пробовал:
#include <iostream> #include <vector> #include <algorithm> using namespace std; bool existsHigher(std::vector<int> arr, int n) { for (int i = 0; i < arr.size(); i++) { if (arr[i] >= n) { return true; } } return false; } int main() { existsHigher([2,3,4,5,6],3) ; return 0; }
jeron1
Вы вызываете метод с параметром [23456], этот параметр не является вектором, ваш компилятор, вероятно, жалуется на эту строку. Вы должны создать вектор, а затем передать его методу, обычно передаваемому по ссылке. что-то вроде;
тап_п()
{
std::vector<int> blah {2,3,4,5,6};
existsHigher(бла, 3);
возвращает 0;
}
где метод выглядит примерно так
боол existsHigher(СТД::вектор&л;int&ГТ;&ампер; модуль arr, int и Н)
{
for (int i = 0; i < arr.size(); i++)
{
// делай свое дело
}
}
Однако многие люди могут использовать итераторы для доступа к элементам вектора.