Ответ 1
являются ли они ключевыми словами, которые заимствуют синтаксис шаблона?
Это. Каста реализуются по-разному в зависимости от контекста, в котором они используются - в общем, они не могут быть реализованы как функции. Например, static_cast
иногда является только операцией с компиляцией, для этого не испускается код. Но в других случаях (в частности, при вызове конструкторов, литье в иерархии типов или преобразовании несовместимых с макетами примитивных типов) требуется операция выполнения.
Тем не менее, вы можете реализовать свои собственные функции, которые напоминают стандартный синтаксис синтаксиса (boost::lexical_cast
делает это).