Есть класс:
C++ (Qt)
class MyClass
{
   ...
private:
    QMap<int,QString> _map;
};
Я хочу реализовать возможность использовать экземпляр моего класса в конструкции 
foreach для последовательного перебора элементов закрытого контейнера '_map'. Что для этого нужно сделать ?
Предполагаю, что мой класс в этом случае должен быть шаблонным и поддерживать работу с итераторами ?
Наследоваться от QMap я не хочу, чтобы сделать невозможными использование методов QMap для пользователей MyClass.