Declaration of 'int accidents[5]' shadows a parameter error
c++, function, parameters, shadow
Solution
int findLowest(int accidents[])
// ^^
{
const int ARRAY_SIZE = 5;
string lowestRegion;
int accidents[ARRAY_SIZE];
// ^^
You have two `accidents` in your `findLowest`
Problem
I'm new to C++ and can't find any way around this error. As far as I know I'm not overloading any variables to create a conflict with naming(which was the closest thing to a cause i could find online). Any help would be much appreciated. ``` #include <iostream> #include <iomanip> #include <string> using namespace std; int getNumAccidents(string); int findLowest(int accidents[]); int main() { const int ARRAY_SIZE = 5; int input; int accidents[ARRAY_SIZE]; int counter = 0; string regions[ARRAY_SIZE] = {"North", "South", "East", "West", "Central"}; string name; string lowestRegion; int lowest = 1000000000; while (counter < ARRAY_SIZE) { name == regions[counter]; accidents[counter] = getNumAccidents(name); counter++; } findLowest(accidents); system("PAUSE"); return 0; } int getNumAccidents(string name) { int input; validate: cout<<"Enter the number of accidents that took place in the "<<name<<" region in the last year:"<<endl; cin>>input; if (input < 0) { system("CLS"); cout<<"Invalid input: the number of accidents can not be negative."; goto validate; } return input; } int findLowest(int accidents[]) { const int ARRAY_SIZE = 5; string lowestRegion; int accidents[ARRAY_SIZE]; string regions[ARRAY_SIZE] = {"North", "South", "East", "West", "Central"}; int lowest = 0; int counter = 0; while (counter < ARRAY_SIZE) { if (accidents[counter] < lowest) { lowest = accidents[counter]; lowestRegion = regions[counter]; } counter++; } cout<<"The "<<lowestRegion<<" region had the least accidents in the past year at " <<lowest<<" accidents."<<endl; } ```