Original Post
Hello, I have created two objects. Now I want to create a third object: Rectangle rectC; After creating the object rectC, how would I make a pointer to this object? I am trying to do this without using new. pseudocode: Rectangle rectC; *rectC = rectC; I hope this makes sense.
[source lang= "cpp"]
//use of pointers with multiple objects
#include <iostream>
using namespace std;
class Rectangle
{
private:
int x, y;
public:
Rectangle();
void set_values(int, int); // must use arguments to set private data
int area();
};
Rectangle::Rectangle() //Constructor will initialize x and y when object rect is created
{ //That way if rect.area() is called before x and y are set, they will
x = 0; //be initialized.
y = 0;
}
void Rectangle::set_values(int a, int b)
{
x = a;
y = b;
}
int Rectangle::area()
{
return(x*y);
}
int main()
{
Rectangle rectA;
rectA.set_values(2, 10);
cout << "rectA Area = " << rectA.area() << endl;
Rectangle *rectB;
rectB = new Rectangle; //must create a new Rectangle object
rectB->set_values(3, 10);
cout << "*rectB Area = " << rectB->area() << endl;
delete rectB; //must delete object rectB when done
return 0;
}