这是代码,我不了解std::string(*)
中的星号(*)
using boost::algorithm::join;
using boost::adaptors::transformed;
auto tostr = static_cast<std::string(*)(int)>(std::to_string);
这是original code
最佳答案
它是指向函数的指针,该函数接受int
参数并返回std::string
-正是std::to_string
所做的事情。
正如@PeteBecker指出的,需要进行强制转换,因为to_string
实际上存在多个重载,接受不同的参数(int,double,short等)。强制转换允许编译器选择其中之一。