Warum gibt es in C ++ STL eine Trennung von Algorithmen, Iteratoren und Containern?

Ich kann nicht herausfinden, warum sie in C ++ STL getrennte Algorithmen, Iteratoren und Container haben. Wenn Vorlagen überall häufig verwendet werden, können Klassen mit allen Informationen an einem Ort mit Vorlagenparametern vorhanden sein.

In einem Text, den ich erhalten habe, wird erklärt, dass Iteratoren Algorithmen bei der Interaktion mit Containerdaten helfen. Was passiert jedoch, wenn Container Mechanismen für den Zugriff auf die Daten bereitstellen, die sie besitzen?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage