what does double setValues int i do I would like to know ab

what does double& setValues( int i ) do? I would like to know about &setvalues, where is it pointing or storing address of? Please explain thoroughly. Thanks.

#include

#include

using namespace std;

double vals[] = {10.1, 12.6, 33.1, 24.1, 50.0};

double& setValues( int i )

{

return vals[i]; // return a reference to the ith element

}

// main function to call above defined function.

int main ()

{

cout << \"The address of vals: \" << &vals << endl;

cout << \"The address of setvalues: \" << &setValues << endl;

cout << \"Value before change\" << endl;

for ( int i = 0; i < 5; i++ )

{

cout << \"vals[\" << i << \"] = \";

cout << vals[i] << endl;

}

  

setValues(1) = 20.23; // change 2nd element

setValues(3) = 70.8; // change 4th element

  

cout << \"Value after change\" << endl;

for ( int i = 0; i < 5; i++ )

{

cout << \"vals[\" << i << \"] = \";

cout << vals[i] << endl;

}

return 0;

}

My question is: what does double& setValues( int i ) do? I would like to know about &setvalues, where is it pointing or storing address of?

Solution

#include <iostream>
//#include
using namespace std;
double vals[] = {10.1, 12.6, 33.1, 24.1, 50.0};
double& setValues( int i )
{
return vals[i]; // return a reference to the ith element
}

// main function to call above defined function.
int main ()
{
cout << \"The address of vals: \" << &vals << endl;
cout << \"The address of setvalues: \" << &setValues << endl;
cout << \"Value before change\" << endl;
for ( int i = 0; i < 5; i++ )
{
cout << \"vals[\" << i << \"] = \";
cout << vals[i] << endl;
}
  
setValues(1) = 20.23; // change 2nd element
setValues(3) = 70.8; // change 4th element
  
cout << \"Value after change\" << endl;
for ( int i = 0; i < 5; i++ )
{
cout << \"vals[\" << i << \"] = \";
cout << vals[i] << endl;
}
return 0;
}

Hi, setvalues method : return the reference of an element of vals array based on index passed to it

Ex:
   setvalues(3) : return the reference of 4th element of vals array, so if you change this referenced variable, it will
                   directly affect the value of vals (element stored at index 3)

   &setvalues : address of function setvalues

what does double& setValues( int i ) do? I would like to know about &setvalues, where is it pointing or storing address of? Please explain thoroughly. T
what does double& setValues( int i ) do? I would like to know about &setvalues, where is it pointing or storing address of? Please explain thoroughly. T

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site