0

C++ 或 Boost 中有没有办法解析直接在迭代器unsigned long long上工作的数字(如果可能) ?wstring它应该和std::stoull.

4

1 回答 1

1

Boost.Spirit有一个基于迭代器的 API。根据我的阅读,它应该比标准的字符串转换函数更快。

#include <iostream>
#include <string>
#include <boost/spirit/include/qi.hpp>

int main()
{
    namespace qi = boost::spirit::qi;

    std::wstring s(L"4398046511104");

    unsigned long long n = 0;
    qi::parse( begin(s), end(s), qi::ulong_long, n );

    std::cout << n << std::endl;
}

Coliru 上的现场演示。

于 2017-04-08T22:59:20.733 回答