Abrir un archivo en C ++ fuera del directorio de trabajo

Tengo un programa que tendrá varios archivos de recursos que el usuario puede colocar en algún lugar de la computadora que no esté en la misma carpeta que el ejecutable. ¿Cómo abro esos archivos?

He encontrado muchas respuestas que dicen que la razón por la que las cosas no funcionan es porque el archivo no está en el directorio de trabajo. He intentado proporcionar caminos completamente calificados:

<code>ifstream str;
str.open("/home/millere/foo.txt")
</code>

pero eso no tuvo éxito. Sé que el camino era correcto (copiar y pegar). No puedo encontrar ninguna documentación al respecto, pero supongo que tiene que ser posible. (vim ~/foo.txt desde cualquier lugar que no sea~ obras, por ejemplo).

Respuestas a la pregunta(2)

Su respuesta a la pregunta