#include <vector>
#include <iostream>
class parent
{
public:
void print();
virtual void generate() = 0;
protected:
std::vector<int> seq;
};
void parent::print()
{
generate();
for (size_t i = 0; i < seq.size(); ++i)
{
std::cout << seq[i] << " ";
}
std::cout << std::endl;
}
class child1:
public parent
{
public:
void generate();
};
void child1::generate()
{
seq.assign(10, 5);
}
class child2:
public parent
{
public:
void generate();
};
void child2::generate()
{
seq.resize(10);
for (size_t i = 0; i < 10; ++i)
{
seq[i] = i;
}
}
int main()
{
child1 c1;
child2 c2;
c1.print();
c2.print();
return 0;
}
Comments