C ++或Boost中有没有办法解析一个直接在unsigned long long
迭代器上工作的数字(wstring
,如果可能的话)?它应该与std::stoull
一样快。
答案 0 :(得分:1)
Boost.Spirit有一个iterator-based 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;
}