__>да. но остался вопрос — как все-таки правильно тогда работать, чтоб не зависеть от платформы (с точностью до перекомпиляции под нужную)?
Кросс-платформенного решения на этот счёт в стандартной библиотеке C++, к сожалению, не существует. Так что вы можете:
— Использовать какую-то стороннюю библиотеку
— Хранить пути до файлов в UTF8 (использовать при этом std::string) и в случае WinAPI конвертировать их в UTF-16 с последующим вызовом wchar_t-функций (CreateFileW / нестандартная перегрузка функции-члена std::ifstream::open). Больше по этому поводу
тут.