以下代码将 std::string
改为 boost:::posix_time::ptime
。
分析分析后,我发现大部分用于该函数的时间(大约90%)都浪费在分配 < code> time_ input_facet 的内存上。 我必须承认,我并不完全理解以下代码,特别是为什么必须将 < code> time_ input_facet 分配在自由内存上。
using boost::posix_time;
const ptime StringToPtime(const string &zeitstempel, const string &formatstring)
{
stringstream ss;
time_input_facet* input_facet = new time_input_facet();
ss.imbue(locale(ss.getloc(), input_facet));
input_facet->format(formatstring.c_str());
ss.str(zeitstempel);
ptime timestamp;
ss >> timestamp;
return timestamp;
}
" 强势 " 你找到任何办法摆脱分配吗? "/强势 "