Оба могут служить этой цели.QMultiMap на самом деле является подклассом QMap.
Если вы хотите иметь несколько значений для одного ключа, вы можете использовать: QMap: для вставки используйте insertMulti QMultiMap: для вставки используйте insert
Если выжелая иметь одно значение для одного ключа, вы можете использовать: QMap: для вставки используйте вставку QMultiMap: для вставки используйте замену
Вы можете видеть, что оба могут обслуживать обе цели.Но у каждого есть уникальное поведение по умолчанию, которое соответствует его имени.Также у каждого есть несколько методов или операторов, что удобно для одного / нескольких.
Лучше выбрать тип в зависимости от ваших потребностей.Это хорошая практика.Например, если вы используете QMap для хранения нескольких значений одного ключа, у другого человека, который просматривает членов вашего класса, может сложиться впечатление, что вы хотите сохранить пары значений одного ключа (из типа данных) Аналогично, если вы используете QMultiMapлюбой, кто читает определение, может понять, что данные будут иметь несколько значений для одного и того же ключа.