как создать массив абстрактного класса

Есть класс мишень и его наследник (тип мишени). Как можно создать массив таких мишеней, с разными параметрами?

class Target {
    protected:
        double _width;
        double _height;
        double _distance;
        int _materialShine;  
    public:
        Target(double w, double h, double d, int m) : _width(w), _height(h), _distance(d), _materialShine(m) { }
        virtual double Visibility() = 0;
    };
    
class RectangleTarget : public Target {
    public:
        RectangleTarget(double w, double h, double d, int m) : Target(w, h, d, m) { }
        double Visibility() {
            double visible = (_width * _height + _distance) / 100 * (1.0 + _materialShine / 100);
            std::cout << "Видимость = " << visible << std::endl;
            return visible;
        }
    
    };
int main()
{
    srand(time(NULL));
    setlocale(LC_ALL, "");

    int size = 10;
    Target** target = new Target * [size];

    //target[0] = new RectangleTarget(fRand(40,90), fRand(40, 90), fRand(70, 190), iRand(0, 1));
    //target[0]->Visibility();

}

Ответы (0 шт):