typedef size_t size_type;
こういうコードを良く見るんですが、これは何のためにやってるんでしょうか?