Una pregunta difícil de responder definitivamente. Los estados estándar de C ++:
El texto del programa se mantiene en unidades llamadas archivos fuente en esta Norma Internacional. Un archivo fuente junto con todos los encabezados (17.4.1.2) y los archivos fuente incluidos (16.2) a través de la directiva de preprocesamiento #include, menos las líneas fuente omitidas por cualquiera de las directivas de preprocesamiento de inclusión condicional (16.1), se denomina unidad de traducción. [Nota: un programa C ++ no necesita ser traducido todos al mismo tiempo. ]
Entonces, para la mayoría de las intenciones y propósitos, una unidad de traducción es un único archivo fuente C ++ y el encabezado u otros archivos que incluye a través del mecanismo de preprocesador #include.
Con respecto a sus otras preguntas:
2) ¿Cuándo debería considerar usarlo al programar con C ++?
No puede no considerarlo: las unidades de traducción son la base de un programa C ++.
3) Si está relacionado solo con C ++, o puede usarse con otros lenguajes de programación
Otros lenguajes tienen conceptos similares, pero su semántica será sutilmente diferente. La mayoría de los otros idiomas no usan un preprocesador, por ejemplo.