Hi,all and thanks in advance. Shape base class, line and Point derived classes.
What should I declare in .h files and implement in .cpp files that this is array will be work.
My major concern refer to operator [] and assign (=) operator. As far as I understand I should overload ([]) and (=) three times for classes shape , line and point or not... or is it possible made through virtual function? How will be code looks like ?

Code:
// part of main.cpp 
 Shape* shapes[3]; // Array of pointers to Shape

shapes[0] = new Shape();
shapes[1] = new Line ("line from array ", Point(1,22),Point(33,22));
shapes[2] = new Point(11,44);

cout << "using ToString function"  << endl;
for(int i=0; i < 3; i++)
cout << s[i]->ToString();

for(i=0; i < 3; i++)
delete s[i];