Использование __int64 и std :: ostringstream в VC6 - PullRequest
1 голос
/ 01 марта 2010

Могу ли я узнать, как обходить этот код в Visual C ++ 6?

#include <sstream>

int main()
{
    std::ostringstream ss;
    ss << 123;
    __int64 i;
    // error C2593: 'operator <<' is ambiguous
    ss << i;
}

Обновление компилятора не является выбором, так как мне нужно использовать этот старый компилятор для взаимодействия с устаревшей системой.

1 Ответ

2 голосов
/ 01 марта 2010

обеспечивает настраиваемое переопределение для операции вставки потока.

пример реализации, как показано ниже

std::ostream& operator<<(std::ostream& stream, __int64 data)
{
    char buf[255] = {0};
    _i64tot( data, buf, 10 );

    stream << buf;
    return stream;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...