Вложенные pair (да еще с итераторами на map) всегда причиняют боль, p.first.second и т.п. Но чаще всего спасает введение алиаса на него
auto &name = p.first.second
Еще мой перфекционизм страдает от того, что first — 5 букв, second — 6, из-за чего выравнивание кода немного ломается. Мне больше нравится имена из haskell у пары: p.fst, p.snd — коротко и ясно.
С данной задачей вполне справляется systemd. (Restart=always, если правильно помню)
systemd?
struct A { std::string s; };
std::string foo()
{
A a;
//...
return std::move(a).s; //если просто сделать a.s, то будет копирование
}
Еще мой перфекционизм страдает от того, что first — 5 букв, second — 6, из-за чего выравнивание кода немного ломается. Мне больше нравится имена из haskell у пары: p.fst, p.snd — коротко и ясно.
Думаю, это кодстайл ClickHouse (возможно, не только он) там имена переменных с _, а у функций camelCase