Adresse de l'élément pointé quel que soit le type / pointeur de l'itérateur passé

Ce qui serait le plus générique de la syntaxe de la fonction suivante :

template<IteratorType> void myFunction(const IteratorType& myIterator)
{
    _ptr = &myIterator[0];
}

- Il un itérateur myIterator (il peut être un pointeur brut) et le but est d'attribuer l'adresse de l'objet pointé par myIterator à un pointeur brut _ptr. Actuellement, je utiliser &myIterator[0] mais j'ai réalisé que seul l'accès aléatoire itérateurs ont l'opérateur [].

Donc, il y a une syntaxe qui fonctionne avec tous les types de la norme itérateurs et les pointeurs ?

source d'informationauteur Vincent