I have a class X, which I provide a snippet of here:
class X { public: template X(Iter begin, Iter end) : mVec(begin, end) {}
It would probably be best to drop const (why would you insist on it anyway?).
const
Otherwise, you have to build a concatenating iterator. It is quite a lot of code, see this thread for more.