-1

とが class の子クラスであるLionと仮定して、私はこのようなことをしたいと思います:SealAnimal

class Zoo
{
public:
    Zoo(std::vector<Lion> lions1, std::vector<Seal> seals1) : lions(lions1), seals(seals1)
    {
        unsigned int i;
        for (i=0; i<lions.size(); ++i)
        {
            animals.push_back(&(lions[i]));
        }
        for (i=0; i<seals.size(); ++i)
        {
            animals.push_back(&(seals[i]));
        }
    }

private:
    std::vector<Animal*> animals;
    std::vector<Lion> lions;
    std::vector<Seal> seals;
};

これはうまくいかないようです。私がやったときにそれがうまくいかないように私には思えanimals.push_back(&(lions[i]));ますanimals.push_back(&(seals[i]));。ポインタに何か問題があります。理由はありますか?

前もって感謝します!

4

1 に答える 1