Из массива и vector лучше использовать deque в случаях если не требуется цельного куска памяти под элементы. Если обращаться к элементам только средствами stl, то deque всегда лучше.
А вы думаете, что от JetBrains тормозить будет меньше? По моему вы чрезмерно наивны. Если сравнить как работает Eclipse для Android и AndroidStudio, то сразу всё заметно. На рабочем компе в Eclipse можно спокойно работать, а вот AndroidStudio это что-то такое, что запустил утром, нажал пару кнопок в обед и закрыл вечером.
Ну заведите таблицу для выдачи ID, в ней с нормальным автоинкрементом, как надо ID, создаёте там запись, берете LAST_INSERT_ID, инвертируете и юзаете. Временами можно безболезненно чистить с помощью DELETE, автоинкремент от этого не помрёт.
Да, очень медленные, конечно никого не волнует, что на фоне сетевой работы это капля в море, но не важно, давайте экономить на спичках. Использование user-space потоков не даст видимого прироста при работе с сетью производительности в принципе. А если и даст, то изначально что-то было не то и при этом это не связано с потоками.
Да что гадать, дело тут в компиляторе, т.к. сохраняется адрес константы, а адреса сравнивать в данном случае нельзя, они могут быть разными. И проверять тут ничего не стоит.
map, тут const не нужен, const автоматом применяется для первого ключа pair.
В принципе можно юзать и как в источнике, т.к. константа разыменуется, она получит свой адрес. Где и будет лежать, проблема в другом, константы может быть 2, вот тогда естественно ничего и не полетит.