BaseClasses> class ClassName : public BaseClasses... { public: ClassName (BaseClasses&&... base_classes) : BaseClasses(base_classes)... {} }; The unpack operator will replicate the types for the base classes of ClassName, such that this class will be derived from each of the types passed in.
BaseClasses> class ClassName : public BaseClasses... { public: ClassName (BaseClasses&&... baseClasses) : BaseClasses(static_cast<BaseClasses&&>(baseClasses))... {} } Operator rozpakowujący może replikować typy dla klas bazowych ClassName tak, że ta klasa będzie dziedziczona z każdego przekazywanego typu.