Listing 4

int main()
{
/*1*/     Circle^ c1 = gcnew Circle(5, 9, 1.5);
/*2*/     Console::WriteLine("c1: {0}", c1);

/*3*/     Circle^ c2 = static_cast<Circle^>(c1->Clone());

/*4*/     Point^ p = c1->Origin;
/*5*/     Console::WriteLine(" p: {0}", p);

/*6*/     c1->SetOrigin(9, 11);

/*7*/     Console::WriteLine("c1: {0}", c1);
/*8*/     Console::WriteLine(" p: {0}", p);
/*9*/     Console::WriteLine("c2: {0}", c2);
}