Уже несколько раз пытался разобраться со всеми этими *_cast'ами, но каждый раз запутывался, т.к. везде, где читал, это описано неупорядочено, сумбурно. Подкиньте плиз линки, где хорошо написано про:
1. Все типы *_cast'ов, сравнение их между собой и с С-шным стилем, описаны различия.
2. Что конкретно происходит при вызове каждого из cast'ов, как обстоят дела, если например переопределён оператор приведения типа.
3. Плюсы и минусы использования cast'ов.