Эта функция-член принимает char const*
, а не std::string
; вам нужно будет передать его pathname.c_str()
.
(В C ++ 0x есть перегрузка open
, которая принимает std::string
, поэтому ваш код когда-нибудь будет работать как есть; ваша реализация, очевидно, пока не поддерживает это.)