Это полностью допустимо и, как правило, хорошая идея, если вы хотите позже легко изменить тип MyVals
. По моему мнению и из того, что я слышал / видел / читал, это именно то, для чего нужны typedef.
Однако, и это то, на что нужно обратить внимание, вам нужно убедиться, что вы никогда не измените typedef на что-то, что не может быть юридически использовано в std::map
. Если вы это сделаете, вы столкнетесь с некоторыми проблемами, и может быть немного трудно отследить, где проблема.