I have following code:
struct Base
{
std::vector<int> a;
}
struct Derived : public Base
{
Derived(Base && rhs):
Base( std::forward<Base>(rhs))
{
}
//some more fields
}
//...
Base a;
Derived b(std::move(a));
Does calling of Derived constructor will lead calling of move constructor of std::vector that contained in Base class?
Base partofDerived objectwill invoke implicitly defined move c'tor of Base which will invoke move constructors of all the data members of Base.