W jakim stanie generowany jest domyślny konstruktor?

Mam następującą klasę:

class Tileset { //base class

public:
    static std::vector<Tileset*> list;
    virtual ~Tileset() = 0;

protected:
    std::vector<Tile> tiles_list;
    sf::Texture sheet;

private: //non copiable
    Tileset(const Tileset&);
    Tileset& operator=(const Tileset&);
};

gdziesf::Texture ma domyślny konstruktor

Z mojego zrozumienia powinien zostać wygenerowany domyślny konstruktor, ponieważ każdy element członkowski może być również zbudowany domyślnie. Jednak mam błąd kompilatora, gdy próbuję skonstruować obiekt pochodny bez wywołania aTileset konstruktor. Czy ktoś może wyjaśnić, dlaczego nie jest generowany domyślny konstruktor?

edytuj: zapomniałem o tym wspomniećTile klasa nie ma domyślnego konstruktora. Nie jestem pewien, czy to coś zmienia

questionAnswers(3)

yourAnswerToTheQuestion