Za mało danych.
O kompatybilności binarnej można mówić, jeśli masz jakąś bibliotekę, która jest używana w innym projekcie.
Teraz zmian wprowadzane w publicznym API takiej bibliotece nie może być dowolne.
Przykładowo:
- wielkość klasy nie może się zmieniać
- kolejność i ilość metod wirtualnych nie może się zmieniać
- itp
Teraz w twoim przykładzie nie wiadomo, czy to jest klasa z publicznego API biblioteki, a jeśli tak to w jaki sposób się to odbywa.
Tak samo nie opisałeś jakiej natury ma być to zmiana, więc zupełnie nie wiadomo, czy ta zmiana jest dopuszczalna czy nie.
Z tym 90% NIE jakie obstawia @Azarien to byłbym ostrożny. Brak konkretów, więc nie można udzielić odpowiedzi.
Ten iterator na pewno użyłeś w jakimś kontekście i od tego zależy, czy można go bezpiecznie usunąć czy nie.
Zakładając, że pokazałeś wszystko, to usunięcie tego iteratora nie przynosi żadnych konsekwencji, ale mam przeczucie, że to nie wszystko.
Jako, że piszesz w Qt to powinieneś przeczytać coś takiego: https://techbase.kde.org/Policies/Binary_Compatibility_Issues_With_C%2B%2B#Note_about_ABI