あるいは
class Foo {
 void assign(const &Foo) { ... } // (A)
};
class Bar : public Foo {
 void assign(const &Foo) { ... } // (B)
};
Foo x1, x2;
Bar y;
auto z = x1;
z.assign(x2); // (C)
y = z;
とかなときに(C)で呼ばれるassign()はどっち?