Hi
I am trying to teach myself C++ coding but am having a problem with classes and objects. I need to pass my objects to a function which may use various object attributes in calculations but may also change the original values of these attributes. My code is:
#include <cstdlib>
#include <iostream>
#include <ctime>
#include "fishclass.hpp"
using namespace std;
int main ()
{
int n, i = 0;
srand(static_cast<unsigned>(time(0)));
cout << "How many fish in population? ";
cin >> n;
Fish river[n]; //creating array of objects
for(int i=0;i<n;i++)
{
river.setWeight();
river.setAge();
river.setEggs();
}
for(int i=0;i<n;i++) //outputting info
{
river.getWeight();
river.getAge();
river.getEggs();
cout << "Fish " << i << " Weight " << river.weight;
cout << " Age " << river.age << " Eggs " << river.eggs << endl;
}
system ( "PAUSE" );
return 0;
}
So I have a class called fish, which have objects called river (ie these are fish in a river). the river objects have attributes called age, weight and eggs. I need to pass the whole array of objects to a function where I can play with the attribute values or change them if necessary.
I have been playing with pointers and references but can not get them to work with an array of objects like I have.
Pls help a newby!
John G.